小编Kam*_*duk的帖子

如何在Perl中控制多线程同步

我有[az,AZ] ASCII数字的数组,如下所示: my @alphabet = (65..90,97..122);

所以主线程功能是从字母表中检查每个字符,如果条件为真则返回字符串.

简单的例子:

    my @output = ();
    for my $ascii(@alphabet){
      thread->new(\sub{ return chr($ascii); });
    }
Run Code Online (Sandbox Code Playgroud)

我想在每个ASCII号上运行线程,然后以正确的顺序将线程函数中的字母放入数组中.

因此,在out case中,数组@output应该是动态的,并且[a..z,A-Z]在所有线程完成其工作后包含.

如何检查,是否已完成所有线程并保持订单?

perl multithreading thread-synchronization

3
推荐指数
1
解决办法
204
查看次数