Многопроцессорные пулы с разными функциями

Большинство примеров многопроцессных рабочих пулов выполняют одну функцию в разных процессах, например

def foo(args):
   pass

if __name__ == '__main__':
   pool = multiprocessing.Pool(processes=30)
   res=pool.map_async(foo,args)

Есть ли способ обрабатывать две разные и независимые функции в пуле? Чтобы вы могли назначить f.e. 15 процессов для foo () и 15 процессов для bar () или пул ограничен одной функцией? Или вам придется вручную создавать разные процессы для разных функций с помощью

 p = Process(target=foo, args=(whatever,))
 q = Process(target=bar, args=(whatever,))
 q.start()
 p.start()

и забыть о пуле рабочих?

18
задан dorvak 7 August 2011 в 22:58
поделиться