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 相关文章推荐
综合图片计数器
Oct 09 PHP
PHP最常用的2种设计模式工厂模式和单例模式介绍
Aug 14 PHP
PHP 正则判断中文UTF-8或GBK的思路及具体实现
Nov 26 PHP
php银联网页支付实现方法
Mar 04 PHP
php通过array_merge()函数合并关联和非关联数组的方法
Mar 18 PHP
php无序树实现方法
Jul 28 PHP
Yii控制器中filter过滤器用法分析
Jul 15 PHP
php+redis在实际项目中HTTP 500: Internal Server Error故障排除
Feb 05 PHP
php实现留言板功能
Mar 05 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
Jun 02 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
Oct 26 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
Feb 18 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
完美解决PHP中的Cannot modify header information 问题
2013/08/12 PHP
PHP函数preg_match_all正则表达式的基本使用详细解析
2013/08/31 PHP
php文件读取方法实例分析
2015/06/20 PHP
php mongodb操作类 带几个简单的例子
2016/08/25 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
php使用imagecopymerge()函数创建半透明水印
2018/01/25 PHP
由prototype_1.3.1进入javascript殿堂-类的初探
2006/11/06 Javascript
JavaScript语法着色引擎(demo及打包文件下载)
2007/06/13 Javascript
AppBaseJs 类库 网上常用的javascript函数及其他js类库写的
2010/03/04 Javascript
来自国外的页面JavaScript文件优化
2010/12/08 Javascript
js open() 与showModalDialog()方法使用介绍
2013/09/10 Javascript
jquery实现效果比较好的table选中行颜色
2014/03/25 Javascript
使用 stylelint检查CSS_StyleLint
2016/04/28 Javascript
使用开源工具制作网页验证码的方法
2016/10/17 Javascript
JS简单封装的图片无缝滚动效果示例【测试可用】
2017/03/22 Javascript
ES6新数据结构Set与WeakSet用法分析
2017/03/31 Javascript
vue自定义一个v-model的实现代码
2018/06/21 Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
2019/07/13 Javascript
JS实现移动端双指缩放和旋转方法
2019/12/13 Javascript
js数据类型转换与流程控制操作实例分析
2019/12/18 Javascript
Node.js实现批量下载图片简单操作示例
2020/01/18 Javascript
探索浏览器页面关闭window.close()的使用详解
2020/08/21 Javascript
[30:00]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第二场 11.28
2020/12/01 DOTA
Pycharm学习教程(4) Python解释器的相关配置
2017/05/03 Python
Python序列化基础知识(json/pickle)
2017/10/19 Python
django的分页器Paginator 从django中导入类
2019/07/25 Python
Python实现PyPDF2处理PDF文件的方法示例
2019/09/25 Python
Python字典深浅拷贝与循环方式方法详解
2020/02/09 Python
很酷的小工具和电子产品商城:GearBest
2016/11/19 全球购物
美国精油公司:Plant Therapy
2019/05/17 全球购物
2014年应届大学生自我评价
2014/01/09 职场文书
《小石潭记》教学反思
2014/02/13 职场文书
小学生环保演讲稿
2014/04/25 职场文书
骨干教师考核评语
2014/12/31 职场文书
中秋联欢会主持词
2015/07/04 职场文书
Python 中random 库的详细使用
2021/06/03 Python