This: $q->dequeue() blocks internally on a cond_wait(), if no data is available in the queue. Signals will not interrupt threads::cond_wait().
That said, how will that queue ever receive anything?
It is created inside the thread and immediately goes into a dequeue(). As it was created inside the thread, no other thread has a handle to it, so no data can ever be queued to it.
Your design is broken.
In reply to Re^3: Perl how to join all threads
by BrowserUk
in thread Perl how to join all threads
by kamrul
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |