zoukankan      html  css  js  c++  java
  • 多线程为什么能提高执行效率?

    1.在多核处理器上,将要执行的任务分成多个可并行执行的线程,就可以提高执行效率。

    2.在单核处理器上,多线程只能并发执行,而不是并行,并发原理,其实就是cpu快速来回切换,在特定的时间执行特定的某一个任务,并发执行存在这线程间上下文切换的问题,会消耗一定的时间。如果不考虑阻塞,多线程并发执行其实比单线程执行更加耗费时间,线程过多也会造成cpu负荷过大,并且线程占用内存资源,创建销毁线程也都是需要开销的。

      多线程通过提高cpu利用率来提高效率。数据库访问、磁盘io等操作的速度比cpu执行代码的速度慢很多,单线程环境下,这些操作会阻塞程序的执行,导致cpu空转,等待着上述操作完成,因此对于会产生这些阻塞的程序来说,使用多线程可以避免在等待期间cpu的空转,提高cpu的利用率。

      考虑到多线程存在的一些缺点,现在的网络服务器为了支持大量并发多不是靠多线程或多进程,而采用其他的技术如异步i/o

  • 相关阅读:
    【解题报告】CF939E
    【解题报告】洛谷P4653 [CEOI2017]Sure Bet
    【解题报告】洛谷P3406 海底高铁
    【解题报告】洛谷P1097 统计数字
    微信开发者工具下载和安装
    STS下载和安装
    HBuilderX下载和安装
    Navicat Premium下载与安装
    PLSQL下载和安装
    Oracle 11g的安装
  • 原文地址:https://www.cnblogs.com/jingpeng77/p/13614560.html
Copyright © 2011-2022 走看看