zoukankan      html  css  js  c++  java
  • 什么情况下使用多线程

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

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

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

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

  • 相关阅读:
    node基础
    jade模板引擎
    体验nodejs有感
    JavaScript创建对象、原型与继承
    JavaScript变量作用域和内存问题(js高级程序设计总结)
    HIbernate 延迟加载和级联删除
    git的简单使用
    Java集合类(一) HashMap、Map、LinkedHashMap、TreeMap
    VMware的网络配置
    密码学基础
  • 原文地址:https://www.cnblogs.com/SmallStrange/p/13280506.html
Copyright © 2011-2022 走看看