On Tuesday, 10 December 2013 at 17:14:47 UTC, Ali Çehreli wrote:
On 12/10/2013 06:56 AM, Gianni Pisetta wrote:
On Tuesday, 10 December 2013 at 13:39:17 UTC, Ali Çehreli
wrote:
On 12/10/2013 04:04 AM, Gianni Pisetta wrote:
Hi,
i want to duplicate/clone a thread with the stack and tls,
like the
standard function fork() in c. Is in the phobos library a
method that do
the same thing?
Gianni Pisetta
Apparently, there isn't. However, you can use fork() directly
from the
core.sys.posix.unistd module.
Ali
I had the same idea, but assumed (maybe wrongly) that it
messes up the
garbage collection because it creates a copy of the allocated
objects in
tls that the gc is not aware of. I searched the core.thread
reference to
see if it has a similar method but found none. Then i posted
this
question. So is it safe to use fork()? I now realized that i
don't know
how the gc works.
Gianni Pisetta
I don't know such details but I presume fork() is safe.
Grepping in Phobos modules, process.d uses it.
Ali
Ok, thanks for the reply. I will give it a try.
Gianni Pisetta