Lines Matching refs:threads

3 @c %MENU% Functions, constants, and data types for working with threads
5 @cindex threads
7 This chapter describes functions used for managing threads.
8 @Theglibc{} provides two threading implementations: ISO C threads and
9 POSIX threads.
19 @cindex ISO C threads
20 @cindex C threads
21 @pindex threads.h
23 This section describes the @glibcadj{} ISO C threads implementation.
25 to read ISO/IEC 9899:2011, section 7.26, in which ISO C threads were
27 in the header file @file{threads.h}.
48 @standards{C11, threads.h}
53 @standards{C11, threads.h}
57 @standards{C11, threads.h}
62 @standards{C11, threads.h}
66 @standards{C11, threads.h}
79 create and use threads. Additional functionality is provided to control
80 the behavior of threads.
82 The following data types are defined for managing threads:
85 @standards{C11, threads.h}
90 @standards{C11, threads.h}
96 The following functions are used for working with threads:
99 @standards{C11, threads.h}
111 @standards{C11, threads.h}
117 @standards{C11, threads.h}
120 same thread. If @var{lhs} and @var{rhs} are different threads, this
125 @standards{C11, threads.h}
144 @standards{C11, threads.h}
147 the execution of the current thread, allowing other threads to run.
151 @standards{C11, threads.h}
164 @standards{C11, threads.h}
178 @standards{C11, threads.h}
184 completion of this function, meaning both threads have arrived at a
201 called once in the presence of multiple, potentially calling threads.
204 @standards{C11, threads.h}
209 @standards{C11, threads.h}
214 @standards{C11, threads.h}
217 invoked from several threads. The completion of the function
228 To have better control of resources and how threads access them,
236 @standards{C11, threads.h}
245 @standards{C11, threads.h}
249 @standards{C11, threads.h}
254 @standards{C11, threads.h}
261 @standards{C11, threads.h}
288 @standards{C11, threads.h}
303 @standards{C11, threads.h}
324 @standards{C11, threads.h}
341 @standards{C11, threads.h}
356 @standards{C11, threads.h}
359 there are any threads waiting on the mutex, the behavior is
373 synchronize threads waiting on a certain condition to happen.
378 @standards{C11, threads.h}
385 @standards{C11, threads.h}
395 @standards{C11, threads.h}
400 no threads are blocked, this function does nothing and returns
406 @standards{C11, threads.h}
408 @code{cnd_broadcast} unblocks all the threads that are currently
410 function returns @code{thrd_success} on success. If no threads are
417 @standards{C11, threads.h}
428 @standards{C11, threads.h}
446 @standards{C11, threads.h}
449 @var{cond}. If there are threads waiting on @var{cond}, the behavior
467 @standards{C11, threads.h}
474 @standards{C11, threads.h}
482 @standards{C11, threads.h}
492 @standards{C11, threads.h}
503 @standards{C11, threads.h}
507 value may be used by different threads, the values bound to the key by
522 @standards{C11, threads.h}
526 Different threads may set different values to the same key.
532 @standards{C11, threads.h}
535 thread-specific storage for the current thread. Different threads may
541 @standards{C11, threads.h}
621 In addition to implementing the POSIX API for threads, @theglibc{} provides
627 threads in a process.
628 * Initial Thread Signal Mask:: Setting the initial mask of threads.
640 attributes used in the creation of threads in a process.
690 threads created with @var{attr} is set to @code{*@var{sigmask}}. If
774 @c threads (really a happens-after relationship for pthread_cond_broadcast
854 Multi-threaded programs require synchronization among threads. This
914 threads using the @code{pthread_create} or @code{thrd_create} function
960 create background threads after the first thread has been created, and
961 the application has no way of knowning that these threads are present.
1012 same for all threads in the process. If the restartable sequences area