set_tid_address man page on Scientific

Man page or keyword search:  
man Server   26626 pages
apropos Keyword Search (all sections)
Output format
Scientific logo
[printable version]

SET_TID_ADDRESS(2)	   Linux Programmer's Manual	    SET_TID_ADDRESS(2)

       set_tid_address - set pointer to thread ID

       #include <linux/unistd.h>

       long set_tid_address(int *tidptr);

       The  kernel  keeps for each process two values called set_child_tid and
       clear_child_tid that are NULL by default.

       If a process is started	using  clone(2)	 with  the  CLONE_CHILD_SETTID
       flag,  set_child_tid is set to child_tidptr, the fifth argument of that
       system call.

       When set_child_tid is set, the very first thing the new process does is
       writing its PID at this address.

       If  a  process  is started using clone(2) with the CLONE_CHILD_CLEARTID
       flag, clear_child_tid is set to child_tidptr,  the  fifth  argument  of
       that system call.

       The  system  call  set_tid_address() sets the clear_child_tid value for
       the calling process to tidptr.

       When clear_child_tid is set, and the process exits, and the process was
       sharing	memory	with  other processes or threads, then 0 is written at
       this address, and a futex(child_tidptr, FUTEX_WAKE, 1, NULL, NULL,  0);
       call  is done.  (That is, wake a single process waiting on this futex.)
       Errors are ignored.

       set_tid_address() always returns the PID of the calling process.

       set_tid_address() always succeeds.

       This call is present since Linux 2.5.48.	 Details  as  given  here  are
       valid since Linux 2.5.49.

       This system call is Linux-specific.

       clone(2), futex(2)

       This  page  is  part of release 3.22 of the Linux man-pages project.  A
       description of the project, and information about reporting  bugs,  can
       be found at

Linux				  2004-09-10		    SET_TID_ADDRESS(2)

List of man pages available for Scientific

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net