12.9. Interfaces for libpthread

Table 12-42 defines the library name and shared object name for the libpthread library

Table 12-42. libpthread Definition

Library:libpthread
SONAME:libpthread.so.0

The behavior of the interfaces in this library is specified by the following specifications:

[LFS] Large File Support
[LSB] This Specification
[SUSv3] POSIX 1003.1-2001 (ISO/IEC 9945-2003)
[SUSv4] POSIX 1003.1-2008 (ISO/IEC 9945-2009)

12.9.1. Realtime Threads

12.9.1.1. Interfaces for Realtime Threads

An LSB conforming implementation shall provide the generic functions for Realtime Threads specified in Table 12-43, with the full mandatory functionality as described in the referenced underlying specification.

Table 12-43. libpthread - Realtime Threads Function Interfaces

pthread_attr_getinheritsched [SUSv3]pthread_attr_getschedpolicy [SUSv3]pthread_attr_getscope [SUSv3]pthread_attr_setinheritsched [SUSv3]
pthread_attr_setschedpolicy [SUSv3]pthread_attr_setscope [SUSv3]pthread_getschedparam [SUSv3]pthread_mutex_getprioceiling(GLIBC_2.4) [SUSv4]
pthread_mutex_setprioceiling(GLIBC_2.4) [SUSv4]pthread_mutexattr_getprioceiling(GLIBC_2.4) [SUSv4]pthread_mutexattr_getprotocol(GLIBC_2.4) [SUSv4]pthread_mutexattr_setprioceiling(GLIBC_2.4) [SUSv4]
pthread_mutexattr_setprotocol(GLIBC_2.4) [SUSv4]pthread_setschedparam [SUSv3]pthread_setschedprio(GLIBC_2.3.4) [SUSv3] 

12.9.2. Advanced Realtime Threads

12.9.2.1. Interfaces for Advanced Realtime Threads

An LSB conforming implementation shall provide the generic functions for Advanced Realtime Threads specified in Table 12-44, with the full mandatory functionality as described in the referenced underlying specification.

Table 12-44. libpthread - Advanced Realtime Threads Function Interfaces

pthread_barrier_destroy [SUSv3]pthread_barrier_init [SUSv3]pthread_barrier_wait [SUSv3]pthread_barrierattr_destroy [SUSv3]
pthread_barrierattr_getpshared(GLIBC_2.3.3) [SUSv3]pthread_barrierattr_init [SUSv3]pthread_barrierattr_setpshared [SUSv3]pthread_getcpuclockid [SUSv3]
pthread_spin_destroy [SUSv3]pthread_spin_init [SUSv3]pthread_spin_lock [SUSv3]pthread_spin_trylock [SUSv3]
pthread_spin_unlock [SUSv3]   

12.9.3. Posix Threads

12.9.3.1. Interfaces for Posix Threads

An LSB conforming implementation shall provide the generic functions for Posix Threads specified in Table 12-45, with the full mandatory functionality as described in the referenced underlying specification.

Table 12-45. libpthread - Posix Threads Function Interfaces

_pthread_cleanup_pop [LSB]_pthread_cleanup_push [LSB]pthread_attr_destroy [SUSv3]pthread_attr_getdetachstate [SUSv3]
pthread_attr_getguardsize [SUSv3]pthread_attr_getschedparam [SUSv3]pthread_attr_getstack [SUSv3]pthread_attr_getstackaddr [SUSv3]
pthread_attr_getstacksize [SUSv3]pthread_attr_init [SUSv3]pthread_attr_setdetachstate [SUSv3]pthread_attr_setguardsize [SUSv3]
pthread_attr_setschedparam [SUSv3]pthread_attr_setstack [SUSv3]pthread_attr_setstackaddr [SUSv3]pthread_attr_setstacksize [SUSv3]
pthread_cancel [SUSv3]pthread_cond_broadcast [SUSv3]pthread_cond_destroy [SUSv3]pthread_cond_init [SUSv3]
pthread_cond_signal [SUSv3]pthread_cond_timedwait [SUSv3]pthread_cond_wait [SUSv3]pthread_condattr_destroy [SUSv3]
pthread_condattr_getpshared [SUSv3]pthread_condattr_init [SUSv3]pthread_condattr_setpshared [SUSv3]pthread_create [SUSv3]
pthread_detach [SUSv3]pthread_equal [SUSv3]pthread_exit [SUSv3]pthread_getconcurrency [SUSv3]
pthread_getspecific [SUSv3]pthread_join [SUSv3]pthread_key_create [SUSv3]pthread_key_delete [SUSv3]
pthread_kill [SUSv3]pthread_mutex_destroy [SUSv3]pthread_mutex_init [SUSv3]pthread_mutex_lock [SUSv3]
pthread_mutex_timedlock [SUSv3]pthread_mutex_trylock [SUSv3]pthread_mutex_unlock [SUSv3]pthread_mutexattr_destroy [SUSv3]
pthread_mutexattr_getpshared [SUSv3]pthread_mutexattr_gettype [SUSv3]pthread_mutexattr_init [SUSv3]pthread_mutexattr_setpshared [SUSv3]
pthread_mutexattr_settype [SUSv3]pthread_once [SUSv3]pthread_rwlock_destroy [SUSv3]pthread_rwlock_init [SUSv3]
pthread_rwlock_rdlock [SUSv3]pthread_rwlock_timedrdlock [SUSv3]pthread_rwlock_timedwrlock [SUSv3]pthread_rwlock_tryrdlock [SUSv3]
pthread_rwlock_trywrlock [SUSv3]pthread_rwlock_unlock [SUSv3]pthread_rwlock_wrlock [SUSv3]pthread_rwlockattr_destroy [SUSv3]
pthread_rwlockattr_getpshared [SUSv3]pthread_rwlockattr_init [SUSv3]pthread_rwlockattr_setpshared [SUSv3]pthread_self [SUSv3]
pthread_setcancelstate [SUSv3]pthread_setcanceltype [SUSv3]pthread_setconcurrency [SUSv3]pthread_setspecific [SUSv3]
pthread_sigmask [SUSv3]pthread_testcancel [SUSv3]sem_close [SUSv3]sem_destroy [SUSv3]
sem_getvalue [SUSv3]sem_init [SUSv3]sem_open [SUSv3]sem_post [SUSv3]
sem_timedwait [SUSv3]sem_trywait [SUSv3]sem_unlink [SUSv3]sem_wait [SUSv3]

An LSB conforming implementation shall provide the generic deprecated functions for Posix Threads specified in Table 12-46, with the full mandatory functionality as described in the referenced underlying specification.

Note: These interfaces are deprecated, and applications should avoid using them. These interfaces may be withdrawn in future releases of this specification.

Table 12-46. libpthread - Posix Threads Deprecated Function Interfaces

pthread_attr_getstackaddr [SUSv3]pthread_attr_setstackaddr [SUSv3]  

12.9.4. Thread aware versions of libc interfaces

12.9.4.1. Interfaces for Thread aware versions of libc interfaces

An LSB conforming implementation shall provide the generic functions for Thread aware versions of libc interfaces specified in Table 12-47, with the full mandatory functionality as described in the referenced underlying specification.

Table 12-47. libpthread - Thread aware versions of libc interfaces Function Interfaces

lseek64 [LFS]open64 [LFS]pread [SUSv3]pread64 [LSB]
pwrite [SUSv3]pwrite64 [LSB]  

12.9.5. GNU Extensions for libpthread

12.9.5.1. Interfaces for GNU Extensions for libpthread

An LSB conforming implementation shall provide the generic functions for GNU Extensions for libpthread specified in Table 12-48, with the full mandatory functionality as described in the referenced underlying specification.

Table 12-48. libpthread - GNU Extensions for libpthread Function Interfaces

pthread_getattr_np [LSB]pthread_mutex_consistent_np [LSB]pthread_mutexattr_getrobust_np [LSB]pthread_mutexattr_setrobust_np [LSB]
pthread_rwlockattr_getkind_np [LSB]pthread_rwlockattr_setkind_np [LSB]