多线程
chicheese
这个作者很懒,什么都没留下…
展开
-
多线程(一)------并发编程的挑战
并发编程的目的是为了让程序运行得更快, 但是, 并不是启动更多的线程就能让程序最大限度地并发执行。在进行并发编程时, 如果希望通过更多多线程执行任务让程序运行得更快, 会面临非常多的挑战,比如上下文切换的问题、死锁的问题, 以及受限于硬件和软件的资源限制问题。 死锁: 锁是个非常有用的工具,运用场景非常多,因为它使用起来非常简单,而且易于理解。但同时它也会带来一些困...原创 2018-11-30 23:23:36 · 164 阅读 · 0 评论 -
深入理解Java虚拟机--Java内存区域与内存溢出异常
1、运行时数据区域 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(Java SE 7 版)》的规定,Java虚拟机所管理的内存将会包括以下几个运行时数据区域,如下图所示: 1.1、...原创 2019-08-06 11:24:59 · 541 阅读 · 0 评论 -
深入理解Java虚拟机--Java内存模型与线程(一)
一、概述 现代计算机操作系统为了提高效率,让计算机同时去做几件事,如果不希望处理器在大部分时间里都处于等待其他资源的状态,就必须使用一些手段去把处理器的运算能力"压榨"出来,否则就会造成很大的浪费,而让计算机同时处理几项任务则是最容易想到、也是非常有效的"压榨"手段。 除了充分利用计算机处理器的能力外,一个服务端同时对多个客户端提供服务则是另一个更具体的并发应用场...原创 2019-03-29 18:22:24 · 123 阅读 · 0 评论