我想并行化用Perl编写的程序。
代码循环遍历多个文件,并为每个文件调用子例程。
我还需要与子例程共享一些只读的本地数据结构。
sub process_in_parallel {
my $readOnlySchema = foo();
foreach my $file ( @files ) {
validate_the_file($file,$readOnlySchema);
}
perl monks可以为这种情况推荐什么样的Perl模块。我尝试了以下一些方法:
threads
这个问题是管理线程。是否有一个有效的线程管理器或线程池库可以帮助我这个?我也不确定是否可以共享只读对象。
Parallel::ForkManager
这样做的问题是它分叉进程而不是线程,并且在我的情况下增加了执行时间。
我在此处发布了相同的问题:http://perlmonks.com/?node_id=1182517