(Python3)我可以在多线程程序的线程内产生一个/多个子进程吗?

问题描述 投票:1回答:1

我有一个用例,程序产生多个线程,即。一个用于网络通信,一个用于修改几个JSON文件,另一个用于查询和写入数据库。这些都是在多个线程中生成的,因为它们都是受I / O约束的任务。

Network Comm线程,JSON文件处理程序和数据库处理程序的代码将由我编写。如果我有多核计算机,则使用多个进程可以极大地优化数据库处理。

我想从Python的角度理解,如何在一个线程内产生多个进程(如果可行)?

multithreading multiprocessing python-3.5
1个回答
0
投票

经过更多搜索之后,我发现了一个页面,可以很好地回答我自己的问题。

in this post所述,从线程启动进程不是一个好主意。线程中获取的互斥锁将被复制,无法在子进程中释放。另外,可能发生许多数据竞争情况。

但是,我喜欢所罗门的想法,发表在评论中(针对我的问题),我将尝试继续进行,或者,可能会改变我的体系结构。

© www.soinside.com 2019 - 2024. All rights reserved.