码迷,mamicode.com
首页 > 编程语言 > 详细

什么情况下使用多线程

时间:2020-07-10 18:57:01      阅读:56      评论:0      收藏:0      [点我收藏+]

标签:程序包   多个   任务   多任务   文件   编程   就是   基于   缺点   

如果你的应用程序需要采取以下的操作,那么你尽可在编程的时候考虑多线程机制:
(1) 连续的操作,需要花费忍无可忍的过长时间才可能完成
(2) 并行计算
(3) 为了等待网络、文件系统、用户或其他I/O响应而耗费大量的执行时间
所以说,在动手之前,先保证自己的应用程序中是否出现了以上3种情形。

为什么需要多线程(解释何时考虑使用线程)
从用户的角度考虑,就是为了得到更好的系统服务;从程序自身的角度考虑,就是使目标任务能够尽可能快的完成,更有效的利用系统资源。综合考虑,一般以下场合需要使用多线程:

1、 程序包含复杂的计算任务时
主要是利用多线程获取更多的CPU时间(资源)。
2、 处理速度较慢的外围设备
比如:打印时。再比如网络程序,涉及数据包的收发,时间因素不定。使用独立的线程处理这些任务,可使程序无需专门等待结果。
3、 程序设计自身的需要
WINDOWS系统是基于消息循环的抢占式多任务系统,为使消息循环系统不至于阻塞,程序需要多个线程的来共同完成某些任务。

多线程的缺点:
1. 如果有大量的线程,会影响性能,因为操作系统需要在它们之间切换.
2. 更多的线程需要更多的内存空间
3. 线程中止需要考虑对程序运行的影响.
4. 通常块模型数据是在多个线程间共享的,需要防止线程死锁情况的发生

什么情况下使用多线程

标签:程序包   多个   任务   多任务   文件   编程   就是   基于   缺点   

原文地址:https://www.cnblogs.com/SmallStrange/p/13280506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!