码迷,mamicode.com
首页 > 编程语言 > 详细

python multiprocessing卡住的1w种方法

时间:2021-05-03 12:10:27      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:queue   python   启动慢   作者   toc   nta   需要   test   int   

CUDA not support fork

技术图片 技术图片

os.register_at_fork进行清理锁操作(需要拿到锁,因此一般为库的作者使用,提高库的多进程兼容性)

Fork VS Spawn

技术图片

Spawn的缺点

技术图片

Guess

import sys
import multiprocessing as mp
def test():
	print(id(x)
x = "1"
print(id(x))
if len(sys.argv)> 1:
	mp. Set_method(sys.argv[1])
with mp Pool(2)as p:
	p apply(test)

spawn无法将定义的东西比如上面的x读进去

ForkServer

用于解决spawn启动慢点问题
3.7以上才好用,,,不过用的少有一些平台不支持
技术图片

more problem

PIcklable

技术图片

Troublemakers:queue

技术图片

python multiprocessing卡住的1w种方法

标签:queue   python   启动慢   作者   toc   nta   需要   test   int   

原文地址:https://www.cnblogs.com/kangshuaibo/p/14723308.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!