
On Sun, 15 Aug 2010 17:23:42 +0200, Roland Bock <rbock@eudoxos.de> wrote:
[...]Can you give me a hint what the problem was with multi-threading in previous versions?
See <http://www.opengroup.org/onlinepubs/000095399/functions/fork.html>: "A process shall be created with a single thread. If a multi-threaded process calls fork(), the new process shall contain a replica of the calling thread and its entire address space, possibly including the states of mutexes and other resources. Consequently, to avoid errors, the child process may only execute async-signal-safe operations until such time as one of the exec functions is called." All previous versions of Boost.Process had called non-async-signal-safe functions between fork() and exec(). Boris