A thread is the smallest unit of processing that can be performed in an OS. In most modern operating systems, a thread exists within a process - that is, a single process may contain multiple threads.
Concurrency refers to the execution of multiple threads at the same time. It occurs in an operating system when multiple process threads are executing concurrently. These threads can interact with one another via shared memory or message passing. Concurrency results in resource sharing, which causes issues like deadlocks and resource scarcity. It aids with techniques such as process coordination, memory allocation, and execution schedule to maximize throughput.
ReadWhat’s the Diff: Programs, Processes and Threads
ReadConcurrency in Operating System
WatchIntro to Processes & Threads
WatchIntroduction to Concurrency
WatchConcurrency, Threading and Parallelism Explained
This page is a work in progress. Help us by writing a small introduction to the topic and suggesting a few links to read more about this topic.
Edit this PageThe project is OpenSource, 7th most starred project on GitHub and is visited by hundreds of thousands of developers every month.
A considerable amount of my time is spent doing unpaid community work on things that I hope will help humanity in some way. Your sponsorship helps me continue to produce more open-source and free educational material consumed by hundreds of thousands of developers every month.
Subscribe yourself to get updates, new guides, videos and roadmaps in your inbox.
Free subscription for updates
Support the project by paying as little as 5$ per month