Tôi có một kịch bản Perl để dồn một số quy trình phụ. Tôi muốn có một số chức năng như xargs --max-procs=4 --max-args=1
hoặc make -j 4
, trong đó Perl sẽ giữ một số quy trình nhất định chạy cho đến khi nó hết hiệu lực. Thật dễ dàng để nói đến ngã ba bốn quá trình và chờ đợi cho họ tất cả để hoàn thành, và sau đó ngã ba khác bốn, nhưng tôi muốn giữ bốn hoặc n quy trình chạy cùng một lúc, thúc đẩy một quá trình mới ngay sau khi một hoàn thành.hàng đợi xử lý perl
Có cách nào đơn giản trong Perl để triển khai một nhóm xử lý như vậy không?
Sự khác nhau giữa khối và hàng đợi là gì? – srchulo
'block' sẽ làm cho chương trình của bạn đợi cho đến khi một số tiến trình con kết thúc để nhiệm vụ tiếp theo có thể bắt đầu. 'queue' sẽ đặt nhiệm vụ hiện tại vào hàng đợi và để chương trình của bạn tiếp tục chạy. Công việc trên hàng đợi sẽ được bắt đầu không đồng bộ khi các tiến trình con khác kết thúc. – mob
Ohhh, được rồi. Cảm ơn rất nhiều! – srchulo