Table of Contents
What are Threads?
One big process consists of one or multiple small threads. Threads are managed and scheduled separately by the scheduler.
The difference between thread and process:
|Utilize fewer resources||Utilize more resources|
|Switching does not need interaction with OS||Switching needs interaction with OS|
|Share the memory with other threads||Does not share the memory with other processes|
|Multiple threads can write, read and can perform many actions with each other.||All processes execute independently to each other.|
Similarities of thread and process:
- Both can share CPU
- Both can create a child
- If one block then other can run
Advantages of threads:
- Reduce context switching.
- Increase processing speed.
- Don’t need for inter-process communication.