On tis, 2004-03-30 at 08:51, Arve Knudsen wrote:I was thinking PTHREAD_CANCEL_ASYNCHRONOUS would be the option, but I already rely on the default behaviour (deferred) for the regular cases, where I politely ask the thread to exit. So I was thinking of some other alternative. The older code I'm using as a reference, makes use of pthread_kill. At first I thought the NPTL lib simply lacked this function (not in pthread.h), but I see now its included through signal.h :pHi
Could anyone explain how I should go about killing a potensially
unresponsive thread? Of course there's pthread_cancel, but I don't wish to
wait for the other thread to reach a cancel point. Basically I'm trying to
implement a watchdog for a realtime audio thread. Any suggestions are
welcome, thanks.
man pthread_cancel:
... ...
pthread_setcanceltype changes the type of responses to cancellation requests for the calling thread: asynchronous (immediate) or deferred.
The type argument is the new cancellation type: either
PTHREAD_CANCEL_ASYNCHRONOUS
to cancel the calling thread as soon as the cancellation request is received, or
PTHREAD_CANCEL_DEFERRED
to keep the cancellation request pending until the next cancellation point.
Thanks
Arve Knudsen
