Threads
In the previous chapter, we discussed threads as part of the multithreading approach that you can use when wanting to write concurrent programs in a POSIX-compliant operating system.
In this section, you will find a recap on everything you should know about threads. We will also bring in some new information that is relevant to topics we will discuss later. Remember that all of this information will act as a foundation for continuing to develop multithreaded programs.
Every thread is initiated by a process. It will then belong to that process forever. It is not possible to have a shared thread or transfer the ownership of a thread to another process. Every process has at least one thread that is its main thread. In a C program, the main
function is executed as part of the main thread.
All the threads share the same Process ID (PID). If you use utilities like top
or htop
, you can easily see the threads are sharing the same process ID, and are grouped...