python多进程编程

Posted 愤怒中的小草

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python多进程编程相关的知识,希望对你有一定的参考价值。

""""
import os
import time
#fork只用于linux中
pid = os.fork()
print("hello")
if pid == 0:
print("子进程{},父进程是{}".format(os.getpid(),os.getppid()))
else:
print("父进程是{}".format(os.getppid()))

#加这个的目的是当父进程关闭的时候关闭子进程
time.sleep(2)
"""
from concurrent.futures import ProcessPoolExecutor
import multiprocessing

#多进程编程
import time

def get_html(n):
time.sleep(n)
print("sub_process")
return n

if __name__ == "__main__":
#process = multiprocessing.Process(target=get_html,args=(2,))
#process.start()
#process.join()
#print("main process")

#进程池
pool = multiprocessing.Pool(multiprocessing.cpu_count())
#result = pool.apply_async(get_html,args=(3,))

#等待所有任务完成加入
#pool.close()
#pool.join()
#print(result.get())

#imap
#for result in pool.imap(get_html,[1,5,3]):
# print("{} sleep success".format(result))

for result in pool.imap_unordered(get_html,[1,5,3]):
print("{} sleep success".format(result))













以上是关于python多进程编程的主要内容,如果未能解决你的问题,请参考以下文章

python多进程编程

python并发编程之多进程编程

Python核心编程总结(五多任务编程之进程与线程)

Python核心编程总结(五多任务编程之进程与线程)

并发编程之多进程进程进程

python多进程编程