develooper Front page | perl.ithreads | Postings from September 2010

Re: Killing a thread

Thread Previous | Thread Next
Jerry D. Hedden
September 29, 2010 08:11
Re: Killing a thread
Message ID:
To my knowledge, if the thread hangs on a system call, then you'll
need to do something similar to what was suggested by the previous

On Wed, Sep 29, 2010 at 10:47, Danny Wong (dannwong) <> wrote:
> Hi Jerry,
>        Is there an example you or someone can provide, if the thread is
> hanging, I would just like the thread to "return failure or timeout" and
> ignore the system call. Let the system call hang and I'll clean it up
> afterwards at the very end of the script.
> Sincerely yours,
> Danny H. Wong
> -----Original Message-----
> From: [] On Behalf Of Jerry
> D. Hedden
> Sent: Wednesday, September 29, 2010 5:47 AM
> To: Danny Wong (dannwong)
> Cc:
> Subject: Re: Killing a thread
> Danny Wong wrote:
>> Here is my situation. I started, say 10 threads, executing
>> some command, 1 or 2 of them is hanging for over 2 hours.
>> I want to put in some logic that if the thread run time
>> passes an hour threshold kill that thread or return and
>> fail the thread. Any ideas on how I can accomplish this
>> task? Thanks.
> This problem is addressed in the 'examples/' file in
> the 'threads' distribution on CPAN.  From the POD (note the
> third bullet):
>    NAME
> - Simple 'threads' example
>        A simplistic example illustrating the following:
>        *   Management of a pool of threads
>        *   Communication between threads using queues
>        *   Timing out and cancelling threads
>        *   Interrupting a threaded program
>        *   Cleaning up threads before terminating
> However, if the 'hung' threads are stuck on some system
> call, then the above will not work because of Perl's "safe
> signals".  You'll need to read the section called "Deferred
> Signals (Safe Signals)" in "perldoc perlipc".

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About