threads/184073: wrong signal delivery to multithreaded processes in Perl
Daniel M. Eischen
eischen at vigrid.com
Tue Nov 19 09:00:01 UTC 2013
The following reply was made to PR threads/184073; it has been noted by GNATS.
From: "Daniel M. Eischen" <eischen at vigrid.com>
To: bug-followup at FreeBSD.org, Thomas.Eckardt at thockar.com
Cc:
Subject: Re: threads/184073: wrong signal delivery to multithreaded processes
in Perl
Date: Tue, 19 Nov 2013 03:40:34 -0500
There is no guarantee in POSIX that the main thread receives a
signal sent to the process if multiple threads (including the
main thread) have the signal unblocked. The only way to
guarantee signal delivery to a specific thread is to send it
directly to the desired thread, have all threads other than the
desired thread mask the signal, or be blocked in sigwait{info}()
from the desired thread at the time of signal delivery. You
are relying on behavior that is not specified by the standard.
More information about the freebsd-threads
mailing list