detachpids(3Tcl)
Tcl_DetachPids, Tcl_ReapDetachedProcs - manage child processes in background
Showing IRIX 6.5.30 (default release). Unchanged since IRIX 6.5.
NAME Tcl_DetachPids, Tcl_ReapDetachedProcs - manage child processes in background SYNOPSIS #include <tcl.h> Tcl_DetachPids(numPids, pidPtr) Tcl_ReapDetachedProcs() | ARGUMENTS int numPids (in) Number of process ids contained in the array pointed to by pidPtr. int *pidPtr (in) Address of array containing numPids process ids. DESCRIPTION Tcl_DetachPids and Tcl_ReapDetachedProcs provide a mechanism for managing| subprocesses that are running in background. These procedures are needed| because the parent of a process must eventually invoke the waitpid kernel| call (or one of a few other similar kernel calls) to wait for the child | to exit. Until the parent waits for the child, the child's state cannot | be completely reclaimed by the system. If a parent continually creates | children and doesn't wait on them, the system's process table will | eventually overflow, even if all the children have exited. | Tcl_DetachPids may be called to ask Tcl to take responsibility for one or| more processes whose process ids are contained in the pidPtr array passed| as argument. The caller presumably has started these processes running | in background and doesn't want to have to deal with them again. | Tcl_ReapDetachedProcs invokes the waitpid kernel call on each of the | background processes so that its state can be cleaned up if it has | exited. If the process hasn't exited yet, Tcl_ReapDetachedProcs doesn't | wait for it to exit; it will check again the next time it is invoked. | Tcl automatically calls Tcl_ReapDetachedProcs each time the exec command | is executed, so in most cases it isn't necessary for any code outside of | Tcl to invoke Tcl_ReapDetachedProcs. However, if you call Tcl_DetachPids| in situations where the exec command may never get executed, you may wish| to call Tcl_ReapDetachedProcs from time to time so that background | processes can be cleaned up. KEYWORDS background, child, detach, process, wait