Thank you for your answer,
but process 2 is not a child of process 1, and so SIGCHLD is not send.
Infact process 2 is executed from process 1 using an MPI routine
called MPI_Comm_spawn.
Do you see other approach I can try?
thank you.
On UNIX, process 1 should get SIGCHLD when process 2 terminates in any way.On Fri, Jan 09, 2009 at 10:06:00AM +0100, Federico Golfrč Andreasi wrote:
> Hi!
>
> I'm using condition variables of Boost.interprocess 1.36.0 to manage a
> synchronized access to a shared memory segment by two tasks.
> I found a problem when: task 1 is waiting on a condition variable and task 2
> crashes during his execution, so task 1 waits forever on that variable.
>
> How can I kill also task 1?
>
The signal should interrupt waiting on the condition variable. By
installing the appropriate signal handler, you can terminate process 1.
I'm not sure how to do this under Windows.
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users