摘要: 所谓死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象 一.出现死锁的原因 (1)交叉锁可导致程序出现死锁 线程A持有R1的锁等待获取R2的锁,线程B持有R2的锁等待R1的锁,这种情况最容易导致程序发生死锁的问题 (2)内存不足 当并发请求系统可用内存时,如果此时系统内 阅读全文
posted @ 2019-05-17 11:07 刘朋飞 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 什么是线程 进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,线程则是进程的一个执行路径,一个进程至少有一个线程,进程的多个线程共享进程的资源。 java启动main函数其实就是启动了一个JVM的进程,而main函数所在的线程就是这个进程的一个线程,也称主线程。 进程和线程关 阅读全文
posted @ 2019-04-28 20:02 刘朋飞 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 一、JVM运行时数据区域1.1、程序计数器 一块较小的内存空间,当前线程所执行的字节码指示器。每个线程有一个独立的程序计数器1.2、Java虚拟机栈 线程私有,生命周期与线程相同 每个方法在执行时会创建一个栈帧用于存储局部变量表,操作数栈,动态链接,方法出口等信息 64位的long和double类型 阅读全文
posted @ 2019-04-23 12:29 刘朋飞 阅读(370) 评论(0) 推荐(0) 编辑