python中的多处理/线程

时间:2016-08-05 20:18:44

标签: python multiprocessing

我在程序中遇到多处理问题。希望你能跟随。

我有一个脚本可以从我的数据库中提取信息,并且对于收到的每个条目,它都会运行一个不会结束的脚本。它检查,检查和检查,并没有结束。洛尔

我还有另一个脚本可以做同样的事情。拉数据库条目并检查并检查并检查......无结束

我还有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个绑定在一起以便用一个脚本启动?

0 个答案:

没有答案
相关问题