java中的并发介绍
这篇文章将为大家详细讲解有关java中的并发介绍,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
成都创新互联公司专业为企业提供皋兰网站建设、皋兰做网站、皋兰网站设计、皋兰网站制作等企业网站建设、网页设计与制作、皋兰企业网站模板建站服务,十年皋兰做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
并发:是指在某个时间段内,多任务交替的执行任务。当有多个线程在操作时,把CPU运行时间划分成若干个时间段,再将时间段分配给各个线程执行。 在一个时间段的线程代码运行时,其它线程处于挂起状。
简单来说,就是cpu在同一时刻执行多个任务。
Java并发则由多线程实现的。
在jvm的世界里,线程就像不相干的平行空间,串行在虚拟机中。(当然这是比较笼统的说法,线程之间是可以交互的,他们也不一定是串行。)
多线程的存在就是压榨cpu,提高程序性能,还能减少一定的设计复杂度(用现实的时间思维设计程序)。
为什么要使用多线程?
先总体上:
从计算机底层来说:线程可以比作是轻量级的进程,是程序执行的最小单元,线程间的切换和调度的成本远远小于进程。另外,多核 CPU 时代意味着多个线程可以同时运行,这减少了线程上下文切换的开销。
从当代互联网发展趋势来说:现在的系统动不动就要求百万级甚至千万级的并发量,而多线程并发编程正式开发高并发系统的基础,利用好多线程机制可以大大提高系统的并发能力以及性能。
再深入到计算机底层:
单核时代:在单核时代多线程主要是为了提高 CPU 和 IO 设备的综合利用率。
多核时代:多核时代主要是为了提高 CPU 的利用率。
使用多线程可能会带来什么问题?
并发编程的目的就是为了能提高程序的执行效率提高程序运行速度,但是并发编程并不总是能提高程序运行速度的,而并发编程可能会遇到很多问题,比如:内存泄漏、上下文切换、死锁等,还有受限于硬件和软件和资源闲置问题。
关于java中的并发介绍就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
分享名称:java中的并发介绍
文章位置:http://hbruida.cn/article/pgidie.html