my @promises;
for 0..13 {
    push @promises, start {say $_;sleep 1;}
    if @promises == 4 {
      await Promise.allof(@promises);
      @promises = [];
    }
}
await @promises;

每 4 个线程, 就先等待返回线程返回。

控制并发数量

 

里面的grep为了提取已完成的, 未完成的就再保存。

 

相关文章:

  • 2021-08-02
  • 2021-10-26
  • 2022-12-23
  • 2021-11-16
  • 2021-11-04
  • 2022-12-23
  • 2022-02-15
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-11
  • 2021-07-07
  • 2022-12-23
相关资源
相似解决方案