*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> Tcl/detachpids (3)              
Title
Content
Arch
Section
 

Contents


Tcl_DetachPids(3Tcl)					  Tcl_DetachPids(3Tcl)


NAME    [Toc]    [Back]

     Tcl_DetachPids, Tcl_ReapDetachedProcs - manage child processes in
     background

SYNOPSIS    [Toc]    [Back]

     #include <tcl.h>

     Tcl_DetachPids(numPids, pidPtr)

     Tcl_ReapDetachedProcs()						      |

ARGUMENTS    [Toc]    [Back]

     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    [Toc]    [Back]

     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    [Toc]    [Back]

     background, child,	detach,	process, wait


									PPPPaaaaggggeeee 1111
[ Back ]
 Similar pages
Name OS Title
crtpipelin IRIX create one or more child processes, with I/O redirection
wait IRIX wait for child processes to stop or terminate
wait IRIX wait for child processes to stop or terminate
unsleep FreeBSD manage the queues of sleeping processes
endtsleep FreeBSD manage the queues of sleeping processes
setrunqueue FreeBSD manage the queue of runnable processes
remrunqueue FreeBSD manage the queue of runnable processes
procrunnable FreeBSD manage the queue of runnable processes
sleepinit FreeBSD manage the queues of sleeping processes
runqueue FreeBSD manage the queue of runnable processes
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service