python多进程使用及线程池的使用方法代码详解


Posted in Python onOctober 24, 2018

多进程:主要运行multiprocessing模块

import os,time
import sys
from multiprocessing import Process
class MyProcess(Process):
  """docstring for MyProcess"""
  def __init__(self, arg, callback):
    super(MyProcess, self).__init__()
    self.arg = arg
    self.callback = callback
  def run(self):
    self.callback(self.arg)
def test(arg):
  print("子进程{}开始>>> pid={}".format(arg,os.getpid()))
  for i in range(1,5):
    sys.stdout.write("子进程{}运行中{}\r".format(arg,i))
    sys.stdout.flush()
    time.sleep(1)
def main():
  print("主进程开始>>> pid={}".format(os.getpid()))
  myp=MyProcess(1,test)
  myp.start()
  myp2=MyProcess(2,test)
  myp2.start()
  myp.join()
  myp2.join()
  print("主进程终止")
if __name__ == '__main__':
  main()

线程池:主要运用了未来模块!下面例子,第一个是正常,第二第线程池,第三个用运行了2个线程池,会排队

from concurrent.futures import ThreadPoolExecutor
import time
def sayhello(a):
  print("hello: "+a)
  time.sleep(2)
def main():
  seed=["a","b","c"]
  start1=time.time()
  for each in seed:
    sayhello(each)
  end1=time.time()
  print("time1: "+str(end1-start1))
  start2=time.time()
  with ThreadPoolExecutor(3) as executor:
    for each in seed:
      executor.submit(sayhello,each)
  end2=time.time()
  print("time2: "+str(end2-start2))
  start3=time.time()
  with ThreadPoolExecutor(2) as executor1:
    executor1.map(sayhello,seed)
  end3=time.time()
  print("time3: "+str(end3-start3))
if __name__ == '__main__':
  main()

总结

以上所述是小编给大家介绍的python多进程使用及线程池的使用方法代码详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python使用Pycrypto库进行RSA加密的方法详解
Jun 06 Python
Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
Jun 14 Python
使用pygame模块编写贪吃蛇的实例讲解
Feb 05 Python
tensorflow实现简单的卷积神经网络
May 24 Python
Python+pandas计算数据相关系数的实例
Jul 03 Python
Python 支付整合开发包的实现
Jan 23 Python
Python字符串通过'+'和join函数拼接新字符串的性能测试比较
Mar 05 Python
libreoffice python 操作word及excel文档的方法
Jul 04 Python
Django haystack实现全文搜索代码示例
Nov 28 Python
python中编写函数并调用的知识点总结
Jan 13 Python
详解Python描述符的工作原理
Jun 11 Python
python自动计算图像数据集的RGB均值
Jun 18 Python
python实现图片筛选程序
Oct 24 #Python
用pycharm开发django项目示例代码
Oct 24 #Python
使用python采集脚本之家电子书资源并自动下载到本地的实例脚本
Oct 23 #Python
Python读取mat文件,并保存为pickle格式的方法
Oct 23 #Python
Python读取系统文件夹内所有文件并统计数量的方法
Oct 23 #Python
Python实现按逗号分隔列表的方法
Oct 23 #Python
Python解析Excle文件中的数据方法
Oct 23 #Python
You might like
php实现给图片加灰色半透明效果的方法
2014/10/20 PHP
朋友网关于QQ相关的PHP代码(研究QQ的绝佳资料)
2015/01/26 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
ThinkPHP+EasyUI之ComboTree中的会计科目树形菜单实现方法
2017/06/09 PHP
javascript web页面刷新的方法收集
2009/07/02 Javascript
JQuery 选择器 xpath 语法应用
2010/05/13 Javascript
javascript基础知识大集锦(二) 推荐收藏
2011/01/13 Javascript
纯JAVASCRIPT图表动画插件Highcharts Examples
2011/04/16 Javascript
javascript 全选与全取消功能的实现代码
2012/12/23 Javascript
解决javascript:window.close()在chrome,Firefox下失效的问题
2013/05/07 Javascript
jQuery制作简单柱状图实例
2015/01/28 Javascript
js实现checkbox全选、不选与反选的方法
2015/02/09 Javascript
Javascript中判断对象是否为空
2015/06/10 Javascript
APP中javascript+css3实现下拉刷新效果
2016/01/27 Javascript
Vue.js第四天学习笔记(组件)
2016/12/02 Javascript
Bootstrap页面缩小变形的快速解决办法
2017/02/03 Javascript
bootstrap fileinput 上传插件的基础使用
2017/02/17 Javascript
用Webpack构建Vue项目的实践
2017/11/07 Javascript
vue axios数据请求及vue中使用axios的方法
2018/09/10 Javascript
在vue项目中使用Jquery-contextmenu插件的步骤讲解
2019/01/27 jQuery
Vue监听页面刷新和关闭功能
2019/06/20 Javascript
Vue实现跑马灯效果
2020/05/25 Javascript
python进阶教程之循环相关函数range、enumerate、zip
2014/08/30 Python
Python内置函数Type()函数一个有趣的用法
2015/02/18 Python
python基于socket实现网络广播的方法
2015/04/29 Python
Python3.2中Print函数用法实例详解
2015/05/19 Python
Python 判断是否为质数或素数的实例
2017/10/30 Python
Python实现调度算法代码详解
2017/12/01 Python
Java及python正则表达式详解
2017/12/27 Python
python实现简单遗传算法
2018/03/19 Python
python tkinter图形界面代码统计工具(更新)
2019/09/18 Python
浅谈Python中的模块
2020/06/10 Python
线程同步的方法
2016/11/23 面试题
客户接待方案
2014/02/26 职场文书
新课培训心得体会
2014/09/03 职场文书
升学宴学生答谢词
2015/01/05 职场文书