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

 更新时间:2018年10月24日 08:49:33   作者:火鸟网络  
这篇文章主要介绍了python多进程使用及线程池的使用方法代码详解,需要的朋友可以参考下

多进程:主要运行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中optparse模块使用浅析

    Python中optparse模块使用浅析

    这篇文章主要介绍了Python中optparse模块使用浅析,optparse模块主要用来为脚本传递命令参数功能,需要的朋友可以参考下
    2015-01-01
  • python写程序统计词频的方法

    python写程序统计词频的方法

    这篇文章主要介绍了python写程序统计词频的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • python对象转字典的两种实现方式示例

    python对象转字典的两种实现方式示例

    这篇文章主要介绍了python对象转字典的两种实现方式,结合实例形式分析了Python字典与对象数据类型转换相关操作技巧,需要的朋友可以参考下
    2019-11-11
  • 使用Python实现首页通知功能

    使用Python实现首页通知功能

    这篇文章主要为大家详细介绍了如何使用Python实现首页通知功能,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • python字符串替换示例

    python字符串替换示例

    这篇文章主要介绍了python字符串替换示例,需要的朋友可以参考下
    2014-04-04
  • Python pandas中apply函数简介以及用法详解

    Python pandas中apply函数简介以及用法详解

    apply()函数是pandas里面所有函数中自由度最高的函数, apply()函数的参数是一个函数指针,这里可以使用lambda表达式帮助简化代码,下面这篇文章主要给大家介绍了关于Python pandas中apply函数简介以及用法的相关资料,需要的朋友可以参考下
    2022-09-09
  • Python中@property的理解和使用示例

    Python中@property的理解和使用示例

    这篇文章主要介绍了Python中@property的理解和使用,结合实例形式分析了Python中@property的功能、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-06-06
  • Python中的列表知识点汇总

    Python中的列表知识点汇总

    这篇文章主要总结了一些Python中的列表的知识点,来自于IBM官网技术文档,需要的朋友可以参考下
    2015-04-04
  • Python曲线拟合多项式深入详解

    Python曲线拟合多项式深入详解

    这篇文章主要给大家介绍了关于Python使用scipy进行曲线拟合的相关资料,Scipy优化和拟合采用的是optimize模块,该模块提供了函数最小值(标量或多维)、曲线拟合和寻找等式的根的有用算法,需要的朋友可以参考下
    2022-11-11
  • python中的编码知识整理汇总

    python中的编码知识整理汇总

    这篇文章主要介绍了python中的编码知识整理汇总的相关资料,需要的朋友可以参考下
    2016-01-01

最新评论