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 相关文章推荐
PHP4实际应用经验篇(7)
Oct 09 PHP
Smarty结合Ajax实现无刷新留言本实例
Jan 02 PHP
php中ob(Output Buffer 输出缓冲)函数使用方法
Jul 21 PHP
php FLEA中二叉树数组的遍历输出
Sep 26 PHP
php实现下载限制速度示例分享
Feb 13 PHP
phpmyadmin提示The mbstring extension is missing的解决方法
Dec 17 PHP
PHP面向对象之后期静态绑定功能介绍
May 18 PHP
php HTML无刷新提交表单
Apr 05 PHP
PHP微信开发之有道翻译
Jun 23 PHP
php从身份证获取性别和出生年月
Feb 09 PHP
PHP用函数嵌入网站访问量计数器
Oct 27 PHP
PHP给源代码加密的几种方法汇总(推荐)
Feb 06 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读取本地文件常用函数(fopen与file_get_contents)
2013/09/09 PHP
PHP批量上传图片的具体实现方法介绍.
2014/02/26 PHP
php判断表是否存在的方法
2015/06/18 PHP
php数组生成html下拉列表的方法
2015/07/20 PHP
PHP中session跨子域的三种实现方法
2016/07/25 PHP
PHP Post获取不到非表单数据的问题解决办法
2018/02/27 PHP
thinkPHP3.2.2框架行为扩展及demo示例
2018/06/19 PHP
php原生数据库分页的代码实例
2019/02/18 PHP
JavaScript 不只是脚本
2007/05/30 Javascript
JS判断是否为数字,是否为整数,是否为浮点数的代码
2010/04/24 Javascript
完美解决IE低版本不支持call与apply的问题
2013/12/05 Javascript
js中style.display=""无效的解决方法
2014/10/30 Javascript
js实现不重复导入的方法
2016/03/02 Javascript
JavaScript浏览器对象模型BOM(BrowserObjectModel)实例详解
2016/11/29 Javascript
bootstrap导航栏、下拉菜单、表单的简单应用实例解析
2017/01/06 Javascript
详解React开发中使用require.ensure()按需加载ES6组件
2017/05/12 Javascript
vue多页面开发和打包正确处理方法
2018/04/20 Javascript
微信小程序商品详情页的底部弹出框效果
2020/11/16 Javascript
vue 监听键盘回车事件详解 @keyup.enter || @keyup.enter.native
2018/08/25 Javascript
微信小程序城市选择及搜索功能的方法
2019/03/22 Javascript
vue路由对不同界面进行传参及跳转的总结
2019/04/20 Javascript
Nodejs封装类似express框架的路由实例详解
2020/01/05 NodeJs
Node.js中文件系统fs模块的使用及常用接口
2020/03/06 Javascript
原生js滑动轮播封装
2020/07/31 Javascript
Windows8下安装Python的BeautifulSoup
2015/01/22 Python
python使用代理ip访问网站的实例
2018/05/07 Python
如何安装多版本python python2和python3共存以及pip共存
2018/09/18 Python
一看就懂得Python的math模块
2018/10/21 Python
keras 使用Lambda 快速新建层 添加多个参数操作
2020/06/10 Python
Python制作运行进度条的实现效果(代码运行不无聊)
2021/02/24 Python
STP协议的主要用途是什么?为什么要用STP
2012/12/20 面试题
西安当代医院管理研究院笔试题
2015/12/11 面试题
会议邀请函范文
2014/01/09 职场文书
儿童生日会策划方案
2014/05/15 职场文书
多媒体教室标语
2014/06/26 职场文书
golang特有程序结构入门教程
2021/06/02 Python