Multithreading
Multithreading support has been available in C for a long time via POSIX threading functions, or the pthreads
library. We have covered multithreading thoroughly in Chapter 15, Thread Execution, and Chapter 16, Thread Synchronization.
The POSIX threading library, as the name implies, is only available in POSIX-compliant systems such as Linux and other Unix-like systems. Therefore, if you are on a non-POSIX compliant operating system such as Microsoft Windows, you have to use the library provided by the operating system. As part of C11, a standard threading library is provided that can be used on all systems that are using standard C, regardless of whether it's POSIX-compliant or not. This is the biggest change we see in the C11 standard.
Unfortunately, C11 threading is not implemented for Linux and macOS. Therefore, we cannot provide working examples at the time of writing.