我在程序中遇到多处理问题。希望你能跟随。
我有一个脚本可以从我的数据库中提取信息,并且对于收到的每个条目,它都会运行一个不会结束的脚本。它检查,检查和检查,并没有结束。洛尔
我还有另一个脚本可以做同样的事情。拉数据库条目并检查并检查并检查......无结束
我还有3个相同的脚本。
我计划让多处理脚本通过创建5个进程来启动此过程。从这5个过程中,每个过程都会运行"对于每个条目"检查并检查和检查。但是,因为每个条目无限期运行,我需要为每个条目创建一个新进程。
实施例。第一个数据库中的10个条目第一个流程运行10个单独的流程,检查,检查和检查。第二个数据库中有5个条目第二个过程运行5个独立的过程来检查和检查......
如果5个主要进程中的每个进程需要单独的较小进程,我如何在python中执行此操作?
这是5个多处理脚本之一:
my_queue = multiprocessing.Manager().Queue() # queue to store our values
stop_event = multiprocessing.Event() # flag which signals processes to stop
my_pool = None
def my_function(foo):
print("starting %s" % foo)
try:
add.build(foo)
except Exception,e:
print str(e)
MAX_PROCESSES = 50
my_pool = multiprocessing.Pool(MAX_PROCESSES)
x = VAR.objects.order_by('name').values('name)
for t in x:
t = t.values()[0]
my_pool.apply_async(my_function, args=(t,))
my_pool.close()
my_pool.join()
现在如何将这些脚本中的4个绑定在一起以便用一个脚本启动?