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下检测字符串是否是utf8编码的代码
Jun 28 PHP
PHP和JAVA中的重载(overload)和覆盖(override) 介绍
Mar 01 PHP
php之readdir函数用法实例
Nov 13 PHP
PHP模板引擎smarty详细介绍
May 26 PHP
WordPress开发中短代码的实现及相关函数使用技巧
Jan 05 PHP
PHP Imagick完美实现图片裁切、生成缩略图、添加水印
Feb 22 PHP
PHP模板引擎Smarty内建函数foreach,foreachelse用法分析
Apr 11 PHP
针对多用户实现头像上传功能PHP代码 适用于登陆页面制作
Aug 17 PHP
PHP控制前台弹出对话框的实现方法
Aug 21 PHP
PHP连接MYSQL数据库的3种常用方法
Feb 27 PHP
php使用fputcsv实现大数据的导出操作详解
Feb 27 PHP
TP5框架实现一次选择多张图片并预览的方法示例
Apr 04 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
Terran兵种介绍
2020/03/14 星际争霸
让你的网站首页自动选择语言转跳
2006/12/06 PHP
PHP将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
php过滤html标记属性类用法实例
2014/09/23 PHP
php中文验证码实现方法
2015/06/18 PHP
php处理带有中文URL的方法
2016/07/11 PHP
二级域名或跨域共享Cookies的实现方法
2008/08/07 Javascript
JavaScript 继承的实现
2009/07/09 Javascript
jquery.form.js用法之清空form的方法
2014/03/07 Javascript
Angularjs的Controller间通信机制实例分析
2016/11/07 Javascript
Angular的模块化(代码分享)
2016/12/26 Javascript
对存在JavaScript隐式类型转换的四种情况的总结(必看篇)
2017/08/31 Javascript
浅谈webpack devtool里的7种SourceMap模式
2019/01/14 Javascript
详解小程序退出页面时清除定时器
2019/04/28 Javascript
Vue项目中配置pug解析支持
2019/05/10 Javascript
JS中getElementsByClassName与classList兼容性问题解决方案分析
2019/08/07 Javascript
js实现弹幕飞机效果
2020/08/27 Javascript
[01:03:59]2018DOTA2亚洲邀请赛3月30日 小组赛B组VGJ.T VS Secret
2018/03/31 DOTA
[46:47]完美世界DOTA2联赛PWL S2 FTD vs Magma 第二场 11.20
2020/11/23 DOTA
python通过cookie模拟已登录状态的初步研究
2016/11/09 Python
django请求返回不同的类型图片json,xml,html的实例
2018/05/22 Python
浅谈Python 递归算法指归
2019/08/22 Python
10个Python面试常问的问题(小结)
2019/11/20 Python
python连接mysql有哪些方法
2020/06/24 Python
python实现测试工具(二)——简单的ui测试工具
2020/10/19 Python
鲜果饮品店创业计划书
2014/01/21 职场文书
2014年旅游局法制宣传日活动总结
2014/11/01 职场文书
乔迁之喜答谢词
2015/01/05 职场文书
人事专员岗位职责
2015/02/03 职场文书
四十年同学聚会致辞
2015/07/28 职场文书
职场新人刚入职工作总结该怎么写?
2019/05/15 职场文书
Python+Appium实现自动抢微信红包
2021/05/21 Python
MySQL8.0无法启动3534的解决方法
2021/06/03 MySQL
MySQL库表太大怎么办? 数据库分库分表项目实践
2022/04/11 MySQL
apache虚拟主机配置的三种方式(小结)
2022/07/23 Servers