Re: Signals and threads
From: Robert Hancock
Date: Fri Nov 24 2006 - 20:06:19 EST
shibu-kundara wrote:
Hi
I have a problem using sigaction function in pthread library.
I have 2 thread each one registering
in threadA
act1.sa_handler=func1;
if(sigaction(SIGUSR1,&act1,NULL)) printf("\nSigaction failed! in th1
!!\n");
in threadB
act1.sa_handler=func2;
if(sigaction(SIGUSR1,&act2,NULL)) printf("\nSigaction failed! in th2
!!\n");
but when i send signal SIGUSR1 to threadA , threadA receives the
signal
but the handler func2 is getting called,
Please let me know is there any way to solve this problem?
thanks in advance
thomas
Signal handlers are global to the process. You can't create different
handlers for the same signal in multiple threads.
--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from hancockr@xxxxxxxxxxxxx
Home Page: http://www.roberthancock.com/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/