Messages in this thread | | | Date | Sun, 22 Jun 2008 08:33:51 +0200 | From | "Bart Van Assche" <> | Subject | Re: Any lightweight way for one thread to force another thread to suspend execution? |
| |
On Sun, Jun 22, 2008 at 3:55 AM, Eric Smith <eric@brouhaha.com> wrote: > Andi wrote: >> Any such mechanism will need a syscall, and it's unlikely that >> any syscall will get much cheaper than a kill(SIGSTOP) > > But is there a way for the process sending the SIGSTOP to wait until it > has taken effect? I need a method to *synchronously* stop another > thread. That's why I thought I probably needed something more > elaborate than SIGSTOP, though I'd like to minimize the number of > system calls required.
Are you aware that SIGSTOP suspends all the threads in a process instead of a single thread ? (Note: this is how the NPTL behaves. With LinuxThreads it was possible to suspend a single thread via SIGSTOP, but this was a violation of the POSIX standards.)
Bart.
| |