Difference between Multi-tasking and Multi-threading

Prerequisite – Multiprogramming, multitasking, multithreading and multiprocessing
Multitasking:
Multitasking is when a CPU is provided to execute multiple tasks at a time. Multitasking involves often CPU switching between the tasks, so that users can collaborate with each program together. Unlike multithreading, In multitasking, the processes share separate memory and resources. As multitasking involves CPU switching between the tasks rapidly, So the little time is needed in order to switch from the one user to next.

Multithreading:
Multithreading is a system in which many threads are created from a process through which the computer power is increased. In multithreading, CPU is provided in order to execute many threads from a process at a time, and in multithreading, process creation is performed according to cost. Unlike multitasking, multithreading provides the same memory and resources to the processes for execution.

Let’s see the difference between multitasking and multithreading:

S.NO Multitasking Multithreading
1. In multitasking, users are allowed to perform many tasks by CPU. While in multithreading, many threads are created from a process through which computer power is increased.
2. Multitasking involves often CPU switching between the tasks. While in multithreading also, CPU switching is often involved between the threads.
3. In multitasking, the processes share separate memory. While in multithreading, processes are allocated same memory.
4. Multitasking component involves multiprocessing. While multithreading component does not involve multiprocessing.
5. In multitasking, CPU is provided in order to execute many tasks at a time. While in multithreading also, CPU is provided in order to execute many threads from a process at a time.
6. In multitasking, processes don’t share same resources, each process is allocated separate resources. While in multithreading, each process share same resources.
7. Multitasking is slow compared to multithreading. While multithreading is faster.
8. In multitasking, termination of process takes more time. While in multithreading, termination of thread takes less time.

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : pp_pankaj