Advantages and Disadvantages of Using Multithreading
Despite improving your application's performance, and avoiding unresponsive user interface, multithreading has the following disadvantages:
- There is a runtime overhead associated with creating and destroying threads. When your application creates and destroys threads frequently, this overhead affects the overall application performance.
- Having too many threads running at the same time decreases the performance of your entire system. This is because your system is attempting to give each thread a time slot to operate inside.
- You should design your application well when you are going to use multithreading, or otherwise your application will be difficult to maintain and extend.
- You should be careful when you implement a multithreading application, because threading bugs are difficult to debug and resolve.