10.8. Interfaces for libpthread

Table 10-40 defines the library name and shared object name for the libpthread library

Table 10-40. 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] LSB Core - Generic
[SUSv3] POSIX 1003.1-2001 (ISO/IEC 9945-2003)
[SUSv4] POSIX 1003.1-2008 (ISO/IEC 9945-2009)

10.8.1. Realtime Threads

10.8.1.1. Interfaces for Realtime Threads

An LSB conforming implementation shall provide the architecture specific functions for Realtime Threads specified in Table 10-41, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-41. libpthread - Realtime Threads Function Interfaces

pthread_attr_getinheritsched(GLIBC_2.0) [SUSv4]pthread_attr_getschedpolicy(GLIBC_2.0) [SUSv4]pthread_attr_getscope(GLIBC_2.0) [SUSv4]pthread_attr_setinheritsched(GLIBC_2.0) [SUSv4]
pthread_attr_setschedpolicy(GLIBC_2.0) [SUSv4]pthread_attr_setscope(GLIBC_2.0) [SUSv4]pthread_getschedparam(GLIBC_2.0) [SUSv4]pthread_setschedparam(GLIBC_2.0) [SUSv4]

10.8.2. Advanced Realtime Threads

10.8.2.1. Interfaces for Advanced Realtime Threads

An LSB conforming implementation shall provide the architecture specific functions for Advanced Realtime Threads specified in Table 10-42, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-42. libpthread - Advanced Realtime Threads Function Interfaces

pthread_barrier_destroy(GLIBC_2.2) [SUSv4]pthread_barrier_init(GLIBC_2.2) [SUSv4]pthread_barrier_wait(GLIBC_2.2) [SUSv4]pthread_barrierattr_destroy(GLIBC_2.2) [SUSv4]
pthread_barrierattr_init(GLIBC_2.2) [SUSv4]pthread_barrierattr_setpshared(GLIBC_2.2) [SUSv4]pthread_getcpuclockid(GLIBC_2.2) [SUSv4]pthread_spin_destroy(GLIBC_2.2) [SUSv4]
pthread_spin_init(GLIBC_2.2) [SUSv4]pthread_spin_lock(GLIBC_2.2) [SUSv4]pthread_spin_trylock(GLIBC_2.2) [SUSv4]pthread_spin_unlock(GLIBC_2.2) [SUSv4]

10.8.3. Posix Threads

10.8.3.1. Interfaces for Posix Threads

An LSB conforming implementation shall provide the architecture specific functions for Posix Threads specified in Table 10-43, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-43. libpthread - Posix Threads Function Interfaces

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

An LSB conforming implementation shall provide the architecture specific deprecated functions for Posix Threads specified in Table 10-44, 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 10-44. libpthread - Posix Threads Deprecated Function Interfaces

pthread_attr_getstackaddr(GLIBC_2.1) [SUSv3]pthread_attr_setstackaddr(GLIBC_2.1) [SUSv3]  

10.8.4. Thread aware versions of libc interfaces

10.8.4.1. Interfaces for Thread aware versions of libc interfaces

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

Table 10-45. libpthread - Thread aware versions of libc interfaces Function Interfaces

lseek64(GLIBC_2.2) [LFS]open64(GLIBC_2.2) [LFS]pread(GLIBC_2.2) [SUSv4]pread64(GLIBC_2.2) [LSB]
pwrite(GLIBC_2.2) [SUSv4]pwrite64(GLIBC_2.2) [LSB]  

10.8.5. GNU Extensions for libpthread

10.8.5.1. Interfaces for GNU Extensions for libpthread

An LSB conforming implementation shall provide the architecture specific functions for GNU Extensions for libpthread specified in Table 10-46, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-46. libpthread - GNU Extensions for libpthread Function Interfaces

pthread_getattr_np(GLIBC_2.2.3) [LSB]pthread_mutex_consistent_np(GLIBC_2.4) [LSB]pthread_mutexattr_getrobust_np(GLIBC_2.4) [LSB]pthread_mutexattr_setrobust_np(GLIBC_2.4) [LSB]
pthread_rwlockattr_getkind_np(GLIBC_2.1) [LSB]pthread_rwlockattr_setkind_np(GLIBC_2.1) [LSB]  

10.8.6. System Calls

10.8.6.1. Interfaces for System Calls

An LSB conforming implementation shall provide the architecture specific functions for System Calls specified in Table 10-47, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-47. libpthread - System Calls Function Interfaces

close(GLIBC_2.0) [SUSv4]fcntl(GLIBC_2.0) [LSB]fork(GLIBC_2.0) [SUSv4]fsync(GLIBC_2.0) [SUSv4]
lseek(GLIBC_2.0) [SUSv4]msync(GLIBC_2.0) [SUSv4]nanosleep(GLIBC_2.0) [SUSv4]open(GLIBC_2.0) [SUSv4]
pause(GLIBC_2.0) [SUSv4]read(GLIBC_2.0) [SUSv4]vfork(GLIBC_2.0) [SUSv3]wait(GLIBC_2.0) [SUSv4]
waitpid(GLIBC_2.0) [LSB]write(GLIBC_2.0) [SUSv4]  

10.8.7. Standard I/O

10.8.7.1. Interfaces for Standard I/O

An LSB conforming implementation shall provide the architecture specific functions for Standard I/O specified in Table 10-48, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-48. libpthread - Standard I/O Function Interfaces

flockfile(GLIBC_2.0) [SUSv4]   

10.8.8. Signal Handling

10.8.8.1. Interfaces for Signal Handling

An LSB conforming implementation shall provide the architecture specific functions for Signal Handling specified in Table 10-49, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-49. libpthread - Signal Handling Function Interfaces

__libc_current_sigrtmax(GLIBC_2.1) [LSB]__libc_current_sigrtmin(GLIBC_2.1) [LSB]raise(GLIBC_2.0) [SUSv4]sigaction(GLIBC_2.0) [SUSv4]
siglongjmp(GLIBC_2.0) [SUSv4]sigwait(GLIBC_2.0) [SUSv4]  

10.8.9. Standard Library

10.8.9.1. Interfaces for Standard Library

An LSB conforming implementation shall provide the architecture specific functions for Standard Library specified in Table 10-50, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-50. libpthread - Standard Library Function Interfaces

__errno_location(GLIBC_2.0) [LSB]ftrylockfile(GLIBC_2.0) [SUSv4]funlockfile(GLIBC_2.0) [SUSv4]longjmp(GLIBC_2.0) [SUSv4]
system(GLIBC_2.0) [LSB]   

10.8.10. Socket Interface

10.8.10.1. Interfaces for Socket Interface

An LSB conforming implementation shall provide the architecture specific functions for Socket Interface specified in Table 10-51, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-51. libpthread - Socket Interface Function Interfaces

__h_errno_location(GLIBC_2.0) [LSB]accept(GLIBC_2.0) [SUSv4]connect(GLIBC_2.0) [SUSv4]recv(GLIBC_2.0) [SUSv4]
recvfrom(GLIBC_2.0) [SUSv4]recvmsg(GLIBC_2.0) [SUSv4]send(GLIBC_2.0) [SUSv4]sendmsg(GLIBC_2.0) [SUSv4]
sendto(GLIBC_2.0) [SUSv4]   

10.8.11. Terminal Interface Functions

10.8.11.1. Interfaces for Terminal Interface Functions

An LSB conforming implementation shall provide the architecture specific functions for Terminal Interface Functions specified in Table 10-52, with the full mandatory functionality as described in the referenced underlying specification.

Table 10-52. libpthread - Terminal Interface Functions Function Interfaces

tcdrain(GLIBC_2.0) [SUSv4]