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 相关文章推荐
将OICQ数据转成MYSQL数据
Oct 09 PHP
php gzip压缩输出的实现方法
Apr 27 PHP
PHP 过滤页面中的BOM(实现代码)
Jun 29 PHP
php环境套包 dedeampz 伪静态设置示例
Mar 26 PHP
destoon数据库表说明汇总
Jul 15 PHP
php常用数学函数汇总
Nov 21 PHP
php根据日期显示所在星座的方法
Jul 13 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
Oct 21 PHP
php图像处理函数imagecopyresampled用法详解
Dec 02 PHP
ThinkPHP5.0框架验证码功能实现方法【基于第三方扩展包】
Mar 11 PHP
PHP使用PDO实现mysql防注入功能详解
Dec 20 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
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
PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]
2011/12/16 PHP
基于php缓存的详解
2013/05/15 PHP
php读取excel文件的简单实例
2013/08/26 PHP
PHP模板引擎Smarty自定义变量调解器用法
2016/04/11 PHP
Laravel 关联模型-关联新增和关联更新的方法
2019/10/10 PHP
jQuery中next方法用法实例
2015/04/24 Javascript
jquery移动点击的项目到列表最顶端的方法
2015/06/24 Javascript
基于jQuery实现select下拉选择可输入附源码下载
2016/02/03 Javascript
省市联动效果的简单实现代码(推荐)
2016/06/06 Javascript
jQuery之简单的表单验证实例
2016/07/07 Javascript
AngularJS基础 ng-if 指令用法
2016/08/01 Javascript
Bootstrap table右键功能实现方法
2017/02/20 Javascript
基于vue+canvas的excel-like组件实例详解
2017/11/28 Javascript
浅谈Redux中间件的实践
2018/07/27 Javascript
浅析vue-router jquery和params传参(接收参数)$router $route的区别
2018/08/03 jQuery
Python 命令行非阻塞输入的小例子
2013/09/27 Python
详解PyTorch中Tensor的高阶操作
2019/08/18 Python
python pygame实现挡板弹球游戏
2019/11/25 Python
Python基础之字符串常见操作经典实例详解
2020/02/26 Python
Python ellipsis 的用法详解
2020/11/20 Python
python实现简单猜单词游戏
2020/12/24 Python
浅析python字符串前加r、f、u、l 的区别
2021/01/24 Python
Python实现Excel自动分组合并单元格
2021/02/22 Python
利用CSS3实现单选框动画特效示例代码
2016/09/26 HTML / CSS
Farfetch香港官网:汇集全球时尚奢侈品购物平台
2017/11/26 全球购物
艺龙旅行网酒店预订:国内、港澳台酒店
2018/06/26 全球购物
澳大利亚厨房和家用电器购物网站:Bing Lee
2021/01/11 全球购物
什么是反射?如何实现反射?
2016/07/25 面试题
什么是托管函数?托管函数有什么用?
2014/06/15 面试题
若通过ObjectOutputStream向一个文件中多次以追加方式写入object,为什么用ObjectInputStream读取这些object时会产生StreamCorruptedException?
2016/10/17 面试题
个人简历自我鉴定
2013/10/11 职场文书
质量标语大全
2014/06/12 职场文书
英语教育专业毕业生求职信
2014/08/28 职场文书
学校机关党总支领导班子整改工作方案
2014/10/26 职场文书
一篇文章带你搞懂Python类的相关知识
2021/05/20 Python
Nginx如何获取自定义请求header头和URL参数详解
2022/07/23 Servers