[closed][perl][thread] Узнать о завершении работы thread-а

Sharp

Есть задача на Perl-е обойти устройства в несколько потоков.
Допустим, устройств 100. Создавать 100 thread-ов не хочется, а хочется создать 5-10, и как только thread сделает свое дело, перезапускать его заново.
Есть вариант создать процессы и дальше в цикле делать sleep затем смотреть какие thread-ы завершились и запускать заместо них новые задания.
А можно как-нить сделать так, чтобы thread после своего завершения сообщал основной программе об этом и не надо было проверять в каком состоянии кто находится?

pinstripe

А нельзя, чтобы первый тред работал с устройствами 0-9, второй с 10-19 и т.д.?

Sharp

Устройства разные по скорости. Есть те, что отдают ответ за 0.5 секунды, есть те, что за 10 секунд.
Конечно, это не очень вероятно, что в одну группу попадут только одну, в другую другие, но хочется застраховаться и от этого.

Sharp

Спасибо. Буду изучать.
Оставить комментарий
Имя или ник:
Комментарий: