博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
为什么需要多线程编程模型
阅读量:4198 次
发布时间:2019-05-26

本文共 525 字,大约阅读时间需要 1 分钟。

首先,我们需要多线程的主要原因是:在许多应用中会同时发生多种活动,某些活动会随着时间的推移被阻塞,通过将这些应用程序分解成可以准并行运行的多个顺序线程,程序设计模型会变得简单起来。

这里可以说加入了一个新的元素:并行实体共享同一个地址空间和所有可用数据的能力。对于某些应用而言,这种能力是必须的,而这正是多进程模型(它们具有不同的地址空间)无法表达的。

第二个需要多线程的理由是,由于线程比进程更轻量级,所以它们更容易(更快)创建和撤销。在一般情况下,创建一个线程比创建一个进程要快上10-100倍。在有大量线程需要动态和快速修改时,具有这一特性是非常重要的。

第三个需要多线程的理由是,关于性能方面的,若多个线程都是CPU密集型的,那么多线程并不能很明显的体现出它的性能的提升,但是在一些需要大量I/O处理和大量计算的情况下,拥有多线程允许这些活动彼此重叠进行,对程序性能的提升是非常明显的。

最后,在多CPU系统中,多线程是有益的,在这样的系统中,可以真正实现物理上的多线程并行运行。

线程概念试图实现的是:共享一组资源的多个线程的执行能力,以便这些线程可以为完成某项任务而共同工作。

进程用于将资源集中在一起,而线程则是在CPU上被调度的实体。

转载地址:http://lrwli.baihongyu.com/

你可能感兴趣的文章
python定义一个装饰器自动测量函数的运行时间
查看>>
语义化版本管理(Semantic Versioning)
查看>>
IT行业--简历模板及就业秘籍
查看>>
JAVA处理Clob大对象
查看>>
计院生活--第二章 深入虎穴(上)
查看>>
计院生活--第二章 深入虎穴(下)
查看>>
JNI简介及实例
查看>>
Quartz入门到精通
查看>>
OGNL表达式语言介绍
查看>>
DOM4J使用教程
查看>>
JAVA实现文件树
查看>>
Drools 规则引擎
查看>>
OLTP和OLAP区别
查看>>
css 优先级
查看>>
DWR入门教程
查看>>
计院生活--第三章 狂轰乱炸(上)
查看>>
商务智能及其实现模型
查看>>
maven2完全使用手册
查看>>
Jasper Report 教程
查看>>
软件性能测试
查看>>