mirror of
https://sourceware.org/git/glibc.git
synced 2025-06-06 11:41:02 +03:00
Add nptl manual chapter
This adds the base chapter for POSIX threads and also documentation for thread-specific data, along with a note on its interaction with C++11 thread_local variables.
This commit is contained in:
parent
e25cfa6005
commit
0409959c86
@ -1,5 +1,10 @@
|
|||||||
2013-03-14 Siddhesh Poyarekar <siddhesh@redhat.com>
|
2013-03-14 Siddhesh Poyarekar <siddhesh@redhat.com>
|
||||||
|
|
||||||
|
* manual/Makefile (chapters): Add nptl.
|
||||||
|
* manual/debug.texi (Debugging Support): Add link to Threads
|
||||||
|
chapter.
|
||||||
|
* manual/nptl.texi: New file.
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/times.c (__times): Fix formatting.
|
* sysdeps/unix/sysv/linux/times.c (__times): Fix formatting.
|
||||||
|
|
||||||
2013-03-14 Petr Baudis <pasky@ucw.cz>
|
2013-03-14 Petr Baudis <pasky@ucw.cz>
|
||||||
|
@ -42,7 +42,7 @@ chapters = $(addsuffix .texi, \
|
|||||||
message search pattern io stdio llio filesys \
|
message search pattern io stdio llio filesys \
|
||||||
pipe socket terminal syslog math arith time \
|
pipe socket terminal syslog math arith time \
|
||||||
resource setjmp signal startup process job nss \
|
resource setjmp signal startup process job nss \
|
||||||
users sysinfo conf crypt debug)
|
users sysinfo conf crypt debug nptl)
|
||||||
add-chapters = $(wildcard $(foreach d, $(add-ons), ../$d/$d.texi))
|
add-chapters = $(wildcard $(foreach d, $(add-ons), ../$d/$d.texi))
|
||||||
appendices = lang.texi header.texi install.texi maint.texi platform.texi \
|
appendices = lang.texi header.texi install.texi maint.texi platform.texi \
|
||||||
contrib.texi
|
contrib.texi
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
@node Debugging Support
|
@node Debugging Support
|
||||||
@c @node Debugging Support, , Cryptographic Functions, Top
|
@c @node Debugging Support, POSIX Threads, Cryptographic Functions, Top
|
||||||
@c %MENU% Functions to help debugging applications
|
@c %MENU% Functions to help debugging applications
|
||||||
@chapter Debugging support
|
@chapter Debugging support
|
||||||
|
|
||||||
|
44
manual/nptl.texi
Normal file
44
manual/nptl.texi
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
@node POSIX Threads
|
||||||
|
@c @node POSIX Threads, , Cryptographic Functions, Top
|
||||||
|
@chapter POSIX Threads
|
||||||
|
@c %MENU% POSIX Threads
|
||||||
|
@cindex threads
|
||||||
|
|
||||||
|
This chapter describes the @glibcadj{} POSIX Thread implementation.
|
||||||
|
|
||||||
|
@menu
|
||||||
|
* Thread-specific Data:: Support for creating and
|
||||||
|
managing thread-specific data
|
||||||
|
@end menu
|
||||||
|
|
||||||
|
@node Thread-specific Data
|
||||||
|
@section Thread-specific Data
|
||||||
|
|
||||||
|
The @glibcadj{} implements functions to allow users to create and manage
|
||||||
|
data specific to a thread. Such data may be destroyed at thread exit,
|
||||||
|
if a destructor is provided. The following functions are defined:
|
||||||
|
|
||||||
|
@table @code
|
||||||
|
|
||||||
|
@item int pthread_key_create (pthread_key_t *@var{key}, void (*@var{destructor})(void*))
|
||||||
|
Create a thread-specific data key for the calling thread, referenced by
|
||||||
|
@var{key}.
|
||||||
|
|
||||||
|
Objects declared with the C++11 @code{thread_local} keyword are destroyed
|
||||||
|
before thread-specific data, so they should not be used in thread-specific
|
||||||
|
data destructors or even as members of the thread-specific data, since the
|
||||||
|
latter is passed as an argument to the destructor function.
|
||||||
|
|
||||||
|
@item int pthread_key_delete (pthread_key_t @var{key})
|
||||||
|
Destroy the thread-specific data @var{key} in the calling thread. The
|
||||||
|
destructor for the thread-specific data is not called during destruction, nor
|
||||||
|
is it called during thread exit.
|
||||||
|
|
||||||
|
@item void *pthread_getspecific (pthread_key_t @var{key})
|
||||||
|
Return the thread-specific data associated with @var{key} in the calling
|
||||||
|
thread.
|
||||||
|
|
||||||
|
@item int pthread_setspecific (pthread_key_t @var{key}, const void *@var{value})
|
||||||
|
Associate the thread-specific @var{value} with @var{key} in the calling thread.
|
||||||
|
|
||||||
|
@end table
|
Loading…
x
Reference in New Issue
Block a user