Perl 相当于 Python 中的一组工人
Perl equivalent of a pool of workers in Python
我有一些 Python 代码可以完全满足我的要求,但是我也需要 Perl 中的类似代码。
这是我的 Python 代码:
pool = multiprocessing.Pool()
for item in list:
pool.apply_async(myFunction, args=(item,))
pool.close()
pool.join()
这段代码 运行 每个函数都在它自己的进程而不是线程中。同时运行等于逻辑核心数的最大进程数
use Parallel::ForkManager;
my $pm = Parallel::ForkManager->new($MAX_PROCESSES);
foreach my $item (@list) {
$pm->start and next;
my_function($item);
$pm->finish;
}
$pm->wait_all_children;
我有一些 Python 代码可以完全满足我的要求,但是我也需要 Perl 中的类似代码。
这是我的 Python 代码:
pool = multiprocessing.Pool()
for item in list:
pool.apply_async(myFunction, args=(item,))
pool.close()
pool.join()
这段代码 运行 每个函数都在它自己的进程而不是线程中。同时运行等于逻辑核心数的最大进程数
use Parallel::ForkManager;
my $pm = Parallel::ForkManager->new($MAX_PROCESSES);
foreach my $item (@list) {
$pm->start and next;
my_function($item);
$pm->finish;
}
$pm->wait_all_children;