使用多线程的优点?
可以同时完成多个任务;可以使程序的响应速度更快;可以让占用大量处理时间的任务或当前没有进行处理的任务定期将处理时间让给别的任务;可以随时停止任务;可以设置每个任务的优先级以优化程序性能
实现多线程的原因是什么?
- CPU运行速度太快,硬件处理速度跟不上,所以操作系统进行分时间片管理。这样,从宏观角度来说是多线程并发的,因为CPU速度太快,察觉不到,看起来是同一时刻执行了不同的操作。但是从微观角度来讲,同一时刻只能有一个线程在处理。
- 目前计算机都是多核多CPU的,一个CPU在同一时刻只能运行一个线程,但是多个CPU在同一时刻就可以运行多个线程。
多线程虽然有很多优点,但是也必须认识到多线程可能存在影响系统性能的不利方面,才能正确使用线程。简述一下多线程的缺点
- 线程也是程序,所以线程需要占用内存,线程越多,占用内存也越多。
- 多线程需要协调和管理,所以需要占用CPU时间以便跟踪线程。
- 线程之间对共享资源的访问会相互影响,必须解决争用共享资源的问题。
- 线程太多会导致控制太复杂,最终可能造成很多程序缺陷
相关资料