There are around 100 threads procedures, all prefixed
pthread_ and they can be categorized into four groups:
- Thread management - creating, joining threads etc.
- Condition variables
- Synchronization between threads using read/write locks and barriers
The POSIX semaphore API works with POSIX threads but is not part of threads standard, having been defined in the POSIX.1b, Real-time extensions (IEEE Std 1003.1b-1993) standard. Consequently, the semaphore procedures are prefixed by
sem_ instead of
- process, thread, NLWP, context switch, Multitasking, Native POSIX Thread Library (NPTL), POSIX Threads, Grand Central Dispatch (GCD or libdispatch)