fork(2): Add information about fork() in multi-threaded processes.

There is nothing about pthread_atfork(3) or extensions like calling
malloc(3) in the child process as this may be unreliable or broken.
This commit is contained in:
jilles 2013-05-31 20:46:08 +00:00
parent ad0bcd65ab
commit c541a64022

View File

@ -73,6 +73,17 @@ are set to 0; see
.It
All interval timers are cleared; see
.Xr setitimer 2 .
.It
The child process has only one thread,
corresponding to the calling thread in the parent process.
If the process has more than one thread,
locks and other resources held by the other threads are not released
and therefore only async-signal-safe functions
(see
.Xr sigaction 2 )
are guaranteed to work in the child process until a call to
.Xr execve 2
or a similar function.
.El
.Sh RETURN VALUES
Upon successful completion,
@ -124,6 +135,7 @@ There is insufficient swap space for the new process.
.Xr rfork 2 ,
.Xr setitimer 2 ,
.Xr setrlimit 2 ,
.Xr sigaction 2 ,
.Xr vfork 2 ,
.Xr wait 2
.Sh HISTORY