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 相关文章推荐
第十二节 类的自动加载 [12]
Oct 09 PHP
php继承的一个应用
Sep 06 PHP
解析PHP中$_FILES的使用以及注意事项
Jul 05 PHP
PHP中mysql_field_type()函数用法
Nov 24 PHP
php获取客户端电脑屏幕参数的方法
Jan 09 PHP
php如何实现只替换一次或N次
Oct 29 PHP
PHP结合Ueditor并修改图片上传路径
Oct 16 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
Jun 02 PHP
thinkPHP5实现数据库添加内容的方法
Oct 25 PHP
PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例
Mar 31 PHP
360搜索引擎自动收录php改写方案
Apr 28 PHP
PHP如何通过表单直接提交大文件详解
Jan 08 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
FCKeditor添加自定义按钮
2008/03/27 PHP
DW中链接mysql数据库时,建立字符集中文出现乱码的解决方法
2010/03/27 PHP
PHP中使用sleep造成mysql读取失败的案例和解决方法
2014/08/21 PHP
php实现微信公众号无限群发
2015/10/11 PHP
Laravel+jQuery实现AJAX分页效果
2016/09/14 PHP
Yii使用DbTarget实现日志功能的示例代码
2020/07/21 PHP
JS弹出对话框返回值代码(asp.net后台)
2010/12/28 Javascript
jQuery效果 slideToggle() 方法(在隐藏和显示之间切换)
2011/06/28 Javascript
jquery实现勾选复选框触发事件给input赋值
2015/02/01 Javascript
JavaScript中Cookies的相关使用教程
2015/06/04 Javascript
js无法获取到html标签的属性的解决方法
2016/07/26 Javascript
JAVA中截取字符串substring用法详解
2017/04/14 Javascript
JS实现静态页面搜索并高亮显示功能完整示例
2017/09/19 Javascript
Vue2.X 通过AJAX动态更新数据
2018/07/17 Javascript
浅析webpack-bundle-analyzer在vue-cli3中的使用
2019/10/23 Javascript
Vue基础配置讲解
2019/11/29 Javascript
[03:21]辉夜杯主赛事 12月25日TOP5
2015/12/26 DOTA
[14:24]Optic Gaming vs PSG LGD BO3
2018/06/07 DOTA
python:print格式化输出到文件的实例
2018/05/14 Python
python实现图片文件批量重命名
2020/03/23 Python
浅谈Python的条件判断语句if/else语句
2019/03/21 Python
Pycharm+Python+PyQt5使用详解
2019/09/25 Python
Win下PyInstaller 安装和使用教程
2019/12/25 Python
Python datetime模块使用方法小结
2020/06/18 Python
基于Python爬取fofa网页端数据过程解析
2020/07/13 Python
CSS3教程:新增加的结构伪类
2009/04/02 HTML / CSS
Rowdy Gentleman服装和配饰:美好时光
2019/09/24 全球购物
学习决心书
2014/03/11 职场文书
留学顾问岗位职责
2014/04/14 职场文书
知识就是力量演讲稿
2014/09/13 职场文书
文明单位汇报材料
2014/12/24 职场文书
员工工作表现自我评价
2015/03/06 职场文书
2015年营销工作总结范文
2015/04/23 职场文书
《飘》英文读后感五篇
2019/10/11 职场文书
sass 常用备忘案例详解
2021/09/15 HTML / CSS
不同品牌、不同型号对讲机如何互相通联
2022/02/18 无线电