multiprocessing相关内容

将复杂字典放入返回队列时,多处理进程不加入

给定一个非常标准的读/写多线程进程,带有一个读队列和一个写队列: 8 次 worker done 被打印,但 join() 语句从未通过.但是,如果我用 `queue_out.put(1) 替换 queue_out.put(r) 它就可以了. 这正在融化我的大脑,可能是非常愚蠢的事情.我应该复制我的字典并将其放入返回队列吗?我在某个地方犯了一个愚蠢的错误吗? 处理函数 def ..
发布时间:2022-01-21 12:02:12 Python

为什么不能从 Kivy 终止这个 Python 多处理进程?

我正在尝试从 Kivy 应用程序中运行 django 开发服务器.到目前为止,这确实很有效. 现在我想允许用户在服务器运行时继续使用该程序.我的想法是为 httpd.serve_forever() 创建一个 multiprocessing.Process 以避免主程序完全锁定.做得很好.这是我的 internal_django 模块中的代码: 导入多处理导入操作系统进口时间从 wsgire ..
发布时间:2022-01-15 09:39:37 Python

perl 进程队列

我有一个 Perl 脚本,它分叉了许多子进程.我想要某种功能,例如 xargs --max-procs=4 --max-args=1 或 make -j 4,Perl 会保留这些功能运行给定数量的进程,直到它耗尽工作. 很容易说 fork 四个进程并等待它们全部完成,然后再 fork 另一个四个,但我想保持四个或 n 个进程同时运行,一旦完成就分叉一个新进程. Perl 中有没有简单的 ..
发布时间:2022-01-12 13:17:05 其他开发

类方法的并行执行

我需要并行执行同一类的许多实例的方法.为此,我尝试使用 Process.start() 和 Process.join() 命令来自 multiprocessing 模块. 例如对于一个类: 类测试:def __init__(self):......def 方法(自我):...... where method 修改了一些类变量.如果我创建该类的两个实例: t1=test()t2=测试() ..
发布时间:2022-01-12 13:16:46 Python

Python pool.map/Multiprocessing 的 Java 等效项

我想知道是否有人可以指出我在 java 中的一个简单等效的 python 多处理模块. 我有一个简单的并行处理场景(其中没有 2 个进程交互):获取一个数据集并将其拆分为 12 个并将 java 方法应用于 12 个数据集,收集结果并将它们加入某种列表中相同的顺序. 作为“专业"语言的 Java 似乎有多个库和方法 - 谁能帮助这个 Java 新手入门? 我想用最少的代码来做这件 ..

Python 多处理 >= 125 列表永远不会完成

我正在尝试实现这个多处理 教程 用于我自己的目的.起初我认为它不能很好地扩展,但是当我做了一个可重现的例子时,我发现如果项目列表超过 124,它似乎永远不会返回答案.在 x = 124 处,它在 0.4 秒内运行,但是当我将其设置为 x = 125 时,它永远不会完成.我在 Windows 7 上运行 Python 2.7. from multiprocessing import Lock, P ..
发布时间:2022-01-12 13:16:17 Python

如何在进程之间共享 pandas DataFrame 对象?

这个问题与我之前发布的链接有相同的点. ( 有没有避免内存深拷贝或减少多处理时间的好方法?) 因为我遇到了“DataFrame"对象共享问题,所以我对此一无所知. 我简化了示例代码. 如果有任何专业人士修改我的代码以在没有 Manager.list、Manager.dict、numpy sharedmem 的进程之间共享“DataFrame"对象,我会非常感谢她或他. ..
发布时间:2022-01-12 13:16:01 Python

Python多处理,传递包含信号量的对象引用

我有这样的场景:我创建了一个包含信号量的类元素的对象. import multiprocessing as mpr类元素(对象):def __init__(self):self.sem = mpr.Semaphore()自我.xyz = 33定义乐趣(ch):a = ch.recv()打印(一个[0])打印(a[1].xyz)a[1].xyz = 99打印(a[1].xyz)el = 元素()( ..
发布时间:2022-01-12 13:15:51 Python

如何并行运行多个子进程并等待它们在 Python 中完成

我正在尝试将 bash 脚本迁移到 Python. bash 脚本并行运行多个操作系统命令,然后等待它们完成后再恢复,即: command1 & command2 & . 命令& 等待 命令 我想使用 Python 子进程实现相同的目的.这可能吗?如何在恢复之前等待 subprocess.call 命令完成? 解决方案 你仍然可以使用 Pop ..
发布时间:2022-01-12 13:14:55 Python

EOFError:类内的输入用完

我有以下代码,我需要一次读取多个传感器.我已经设置了线程和多处理来为我完成这项任务.当线程和多处理代码在主类之外时,它可以正常工作,但该类不能使用它检索的数据.当我将多线程代码放入类中时,我遇到了 EOFError: Ran out of input 错误. 代码如下: 导入操作系统导入多处理从多处理导入进程,池导入线程导入队列将 tkinter 导入为 tk从 tkinter 导入 *从 ..
发布时间:2022-01-12 13:14:46 Python

带有 maxtasksperchild 的 multiprocessing.Pool 产生相等的 PID

我需要在与所有其他内存完全隔离的进程中多次运行一个函数.我想为此使用 multiprocessing (因为我需要序列化来自函数的复杂输出).我将 start_method 设置为 'spawn' 并使用带有 maxtasksperchild=1 的池.我希望为每个任务获得不同的进程,因此会看到不同的 PID: 导入多处理进口时间导入操作系统定义 f(x):print("PID: %d" % o ..
发布时间:2022-01-12 13:14:38 Python

Python多处理导致许多僵尸进程

我一直在使用一组工作人员来实现 python 的多处理库.我实现了以下代码 import main1t1 = time.time()p = 池(核心)结果 = p.map(main1, client_list[client])如果结果 == []:返回 []p.close()p.join()print "执行请求所花费的时间:: ", time.time()-t1返回短路(结果) 但是,在运行 ..
发布时间:2022-01-12 13:14:32 Python

与常规 dict 相比,Python manager.dict() 非常慢

我有一个存储对象的字典: jobs = {}工作=工作()工作[工作名称] = 工作 现在我想将它转换为使用 manager dict,因为我想使用多处理并且需要在进程中共享这个 dict mgr = multiprocessing.Manager()工作 = mgr.dict()工作=工作()工作[工作名称] = 工作 仅仅通过转换为使用 manager.dict() 事情变得非常缓慢. ..

使用 numpy 进行多处理使 Python 在 OSX 上意外退出

我遇到了一个问题,即 Python 在使用 numpy 运行多处理时意外退出.我已经隔离了这个问题,因此我现在可以确认在运行以下代码时多处理工作正常: 将 numpy 导入为 np从多处理导入池,进程进口时间将 cPickle 导入为 p定义测试(参数):x,i = 参数如果我 == 2:时间.sleep(4)arr = np.dot(x.T,x)打印我如果 __name__ == '__mai ..
发布时间:2022-01-12 13:13:57 Python