in reply to Why do my threads sometimes die silenty?
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.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Why do my threads sometimes die silenty?
by alain_desilets (Beadle) on Sep 21, 2011 at 20:25 UTC | |
by BrowserUk (Patriarch) on Sep 21, 2011 at 20:38 UTC | |
by alain_desilets (Beadle) on Sep 21, 2011 at 21:00 UTC | |
by BrowserUk (Patriarch) on Sep 21, 2011 at 21:09 UTC | |
by alain_desilets (Beadle) on Sep 21, 2011 at 21:25 UTC | |
| |
by alain_desilets (Beadle) on Sep 21, 2011 at 21:22 UTC | |
by BrowserUk (Patriarch) on Sep 21, 2011 at 21:33 UTC | |
|