Without some clues as to what is going on, it is impossible to diagnose the cause. And therefore difficult to suggest a solution. But I do understand your difficulty in providing those clues.
The single simplest help you could give us, is to post the code of a thread procedure that you know has silently died. If you have more than one, post them all.
One trick I've previously used to track down a similar problem is to wrap the thread procedure in a block eval. So for example, if you have code like this:
sub worker { .... } ... my @workers = map threads->new( \&worker, ... ), 1 .. $WORKERS;
Make the following simple modification:
sub worker { .... } sub proxy { my( $code, @args ) = @_; eval{ $code->( @args ) } or print $@; } ... my @workers = map threads->new( \&proxy, \&worker, ... ), 1 .. $WORKER +S;
This may yield some clues. But posting the code of known to (sometimes) silently die thread subs would likely get better answers.
In reply to Re: Why do my threads sometimes die silenty?
by BrowserUk
in thread Why do my threads sometimes die silenty?
by alain_desilets
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |