python进程与线程小结实例分析


Posted in PHP onNovember 11, 2018

传统方式是调用2个方法执行1个任务,方法按顺序依次执行

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)
if __name__ == '__main__':
  run('t1')
  run('t2')

多线程例子

2个线程同时并发执行1个任务

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)

if __name__ == '__main__':
  t1=threading.Thread(target=run,args=('t1',))
  t2=threading.Thread(target=run,args=('t2',))
  t1.start()
  t2.start()

自己写一个类继承继承threading.Thread

# -*- coding:utf-8 -*-
import threading
import time
class MyThread(threading.Thread):
  def __init__(self,n):
    super(MyThread,self).__init__()
    self.n=n
  #这里面默认就有一个run方法
  def run(self):
    print('runing task',self.n)
if __name__ == '__main__':
  #在主方法通过对象调用线程
  t1=MyThread('t1')
  t2=MyThread('t2')
  t1.run()
  t2.run()

使用for循环启动多个线程

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)
if __name__ == '__main__':
  for i in range(10):
    t=threading.Thread(target=run,args=('t-%s'%i,))
    t.start()

等多线程同时执行完后,再执行其它代码,因为线程是与其它代码一起运行的

# -*- coding:utf-8 -*-
import threading
import time
def run(n):
  print('task',n)
  time.sleep(3)
if __name__ == '__main__':
  time_start=time.time()
  #定义一个空列表装线程t实例
  t_objects=[]
  for i in range(10):
    t=threading.Thread(target=run,args=('t-%s'%i,))
    t.start()
    t_objects.append(t)
  # 等所有线程执行完后,再执行下面的代码
  # 因为线程与下面的代码是同时运行的
  # 要想先等线程执行完毕再执行其它代码
  # 使用join()方法进行阻塞
  #在这里统一结束所有t线程
  for i in t_objects:
    t.join()
  time_end=time.time()
  sun=time_end-time_start
  print(sun)

总结

以上所述是小编给大家介绍的python进程与线程小结实例分析,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

PHP 相关文章推荐
PHP中GET变量的使用
Oct 09 PHP
PHP如何透过ODBC来存取数据库
Oct 09 PHP
PHP实现用户认证及管理完全源码
Mar 11 PHP
php at(@)符号的用法简介
Jul 11 PHP
PHP采集利器 Snoopy 试用心得
Jul 03 PHP
PHP查询数据库中满足条件的记录条数(两种实现方法)
Jan 29 PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
Mar 03 PHP
简要剖析PHP的Yii框架的组件化机制的基本知识
Mar 17 PHP
php实时倒计时功能实现方法详解
Feb 27 PHP
PHP使用CURL实现下载文件功能示例
Jun 03 PHP
自定义Laravel (monolog)日志位置,并增加请求ID的实现
Oct 17 PHP
PHP替换Word中变量并导出PDF图片的实现方法
Nov 26 PHP
PHP 获取客户端 IP 地址的方法实例代码
Nov 11 #PHP
如何优雅的使用 laravel 的 validator验证方法
Nov 11 #PHP
php使用curl模拟浏览器表单上传文件或者图片的方法
Nov 10 #PHP
safari下载文件自动加了html后缀问题
Nov 09 #PHP
centos7上编译安装php7以php-fpm方式连接apache
Nov 08 #PHP
PHP校验15位和18位身份证号的类封装
Nov 07 #PHP
php中如何执行linux命令详解
Nov 06 #PHP
You might like
mac系统下安装多个php并自由切换的方法详解
2017/04/21 PHP
laravel 修改.htaccess文件 重定向public的解决方法
2019/10/12 PHP
JavaScript高级程序设计 读书笔记之十 本地对象Date日期
2012/02/27 Javascript
node.js Web应用框架Express入门指南
2014/05/28 Javascript
javascript表单控件实例讲解
2016/09/13 Javascript
详解javascript立即执行函数表达式IIFE
2017/02/13 Javascript
jQuery插件zTree实现获取一级节点数据的方法
2017/03/08 Javascript
BootStrap selectpicker后台动态绑定数据
2017/06/01 Javascript
基于JavaScript实现无限加载瀑布流
2017/07/21 Javascript
Vue中的vue-resource示例详解
2018/11/02 Javascript
vue实现的仿淘宝购物车功能详解
2019/01/27 Javascript
使用layer.msg 时间设置不起作用的解决方法
2019/09/12 Javascript
基于JavaScript实现表格隔行换色
2020/05/08 Javascript
[49:05]OG vs Newbee 2019DOTA2国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
Python 内置函数memoryview(obj)的具体用法
2017/11/23 Python
Python中list查询及所需时间计算操作示例
2018/06/21 Python
Python 单元测试(unittest)的使用小结
2018/11/14 Python
Python2和3字符编码的区别知识点整理
2019/08/08 Python
Python shutil模块用法实例分析
2019/10/02 Python
Python中输入和输出(打印)数据实例方法
2019/10/13 Python
Python 读取WAV音频文件 画频谱的实例
2020/03/14 Python
python中entry用法讲解
2020/12/04 Python
css3加js做一个简单的3D行星运转效果实例代码
2017/01/18 HTML / CSS
HTML5引入的新数组TypedArray介绍
2012/12/24 HTML / CSS
美国NBA官方商店:NBA Store
2019/04/12 全球购物
波兰在线运动商店:YesSport
2020/07/23 全球购物
师范学院毕业生求职信范文
2013/12/26 职场文书
文秘自荐信
2014/06/28 职场文书
计算机求职信
2014/07/02 职场文书
制冷与空调专业毕业生推荐信
2014/07/07 职场文书
个人委托书怎么写
2014/09/17 职场文书
大学生党员个人剖析材料
2014/10/08 职场文书
2015年小学财务工作总结
2015/07/20 职场文书
二手手机买卖合同范本(2019年版)
2019/10/28 职场文书
MySQL优化及索引解析
2022/03/17 MySQL
原生JS实现分页
2022/04/19 Javascript