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 file_put_contents()功能函数(集成了fopen、fwrite、fclose)
May 24 PHP
无法载入 mcrypt 扩展,请检查 PHP 配置终极解决方案
Jul 18 PHP
phpExcel导出大量数据出现内存溢出错误的解决方法
Feb 28 PHP
PHP连接局域网MYSQL数据库的简单实例
Aug 26 PHP
让CodeIgniter数据库缓存自动过期的处理的方法
Jun 12 PHP
关于PHP开发的9条建议
Jul 27 PHP
php单例模式的简单实现方法
Jun 10 PHP
thinkPHP5.0框架应用请求生命周期分析
Mar 25 PHP
Thinkphp5结合layer弹窗定制操作结果页面
Jul 07 PHP
php 广告点击统计代码(php+mysql)
Feb 21 PHP
一次因composer错误使用引发的问题与解决
Mar 06 PHP
Laravel框架查询构造器简单示例
May 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
做个自己站内搜索引擎
2006/10/09 PHP
php 动态添加记录
2009/03/10 PHP
php checkdate、getdate等日期时间函数操作详解
2010/03/11 PHP
php 图片加水印与上传图片加水印php类
2010/05/12 PHP
php程序的国际化实现方法(利用gettext)
2011/08/14 PHP
javascript string字符串优化问题
2011/07/31 Javascript
为JS扩展Array.prototype.indexOf引发的问题探讨及解决
2013/04/24 Javascript
ThinkPHP+jquery实现“加载更多”功能代码
2017/03/11 Javascript
canvas绘制一个常用的emoji表情
2017/03/30 Javascript
vue 实现 ios 原生picker 效果及实现思路解析
2017/12/06 Javascript
vuex如何重置所有state(可定制)
2019/01/17 Javascript
elementUI多选框反选的实现代码
2019/04/03 Javascript
小程序实现锚点滑动效果
2019/09/23 Javascript
微信小程序本地存储实现每日签到、连续签到功能
2019/10/09 Javascript
js页面加载后执行的几种方式小结
2020/01/30 Javascript
python通过getopt模块如何获取执行的命令参数详解
2017/12/29 Python
Python创建一个空的dataframe,并循环赋值的方法
2018/11/08 Python
Flask核心机制之上下文源码剖析
2018/12/25 Python
python实现H2O中的随机森林算法介绍及其项目实战
2019/08/29 Python
numpy按列连接两个维数不同的数组方式
2019/12/06 Python
Python tkinter布局与按钮间距设置方式
2020/03/04 Python
Django ORM 查询表中某列字段值的方法
2020/04/30 Python
python openpyxl模块的使用详解
2021/02/25 Python
CSS3 rgb and rgba(透明色)的使用详解
2020/09/25 HTML / CSS
美国玛丽莎收藏奢华时尚商店:Marissa Collections
2016/11/21 全球购物
Hotels.com日本:国外和海外住宿,酒店预订
2019/12/13 全球购物
linux系统都有哪些运行级别
2016/03/26 面试题
大学考试作弊检讨书
2014/01/30 职场文书
书香校园活动方案
2014/02/28 职场文书
医院2014国庆节活动策划方案
2014/09/21 职场文书
小学教师党员承诺书
2015/04/27 职场文书
篮球比赛通讯稿
2015/07/18 职场文书
pytest配置文件pytest.ini的详细使用
2021/04/17 Python
MySQL系列之一 MariaDB-server安装
2021/07/02 MySQL
MySQL对数据表已有表进行分区表的实现
2021/11/01 MySQL
Python自动化工具之实现Excel转Markdown表格
2022/04/08 Python