摘要: 1 public class VolatileThread implements Runnable { 2 3 private volatile int a = 0; 4 5 @Override 6 public void run() { 7 // synchronized (this){//② 8 阅读全文
posted @ 2020-05-11 18:54 寻尘向阳 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 一、进程与线程 1. 概念: 进程是操作系统结构的基础,是一个计算机中正在运行的程序实例,是分配给处理器并由处理器执行的一个实体,是由单一顺序执行显示、描述当前状态和一组相关系统资源组成的活动单元。如打开一个浏览器就是启动浏览器进程,打开word文档,就是启动word进程。 线程是进程执行运算的最小 阅读全文
posted @ 2020-05-07 23:44 寻尘向阳 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 前段时间把rabbitMq系统过了一遍,由于没有demo演练,俗话说:“光看不练假把式”,于是乎便着手代码的实战。很久没接触普通spring工程项目了,这不刚集成rabbitMq,各种奇葩问题。好了,废话不多说,上演问题: 06-May-2020 17:25:40.085 严重 [RMI TCP C 阅读全文
posted @ 2020-05-06 18:57 寻尘向阳 阅读(416) 评论(0) 推荐(0) 编辑
摘要: ps:该篇为复用篇,查看原著请移步:https://www.cnblogs.com/chenpt/p/9803298.html,另外一篇同时也进一步介绍了调优方面的知识,在此也标记下,以作进一步学习和借鉴:https://www.cnblogs.com/zhguang/p/Java-JVM-GC.h 阅读全文
posted @ 2020-04-30 00:55 寻尘向阳 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 一、GC概念 GC定义: Garbage Collection 垃圾收集。这里所谓的垃圾指的是在系统运行过程当中所产生的一些无用的对象,这些对象占据着一定的内存空间,如果长期不被释放,可能导致OOM。 为什么引入GC: 由于Java不像c/c++那样可以由程序猿去控制内存空间的分配、管理、释放,因此 阅读全文
posted @ 2020-04-28 21:15 寻尘向阳 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 一、程序计数器(Programmer Counter Register) 程序计数器是一块较小的内存空间,它的作用可以看作是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础 阅读全文
posted @ 2020-04-27 23:39 寻尘向阳 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 一、虚拟机栈 1. 什么是虚拟机栈? 虚拟机栈是用于描述java方法执行的内存模型。 每个java方法在执行时,会创建一个“栈帧(stack frame)”,栈帧的结构分为“局部变量表、操作数栈、动态链接、方法出口(方法返回地址)。我们常说的“堆内存、栈内存”中的“栈内存”指的便是虚拟机栈,确切地说 阅读全文
posted @ 2020-04-27 00:44 寻尘向阳 阅读(394) 评论(0) 推荐(0) 编辑
摘要: 上一篇线程共享分类图显示,堆和方法区都是线程共享的区域,在 HotSpot JVM 中,永久代( ≈ 方法区)中用于存放虚拟机加载的类信息、常量池、静态属性。每当一个类初次被加载的时候,都会放到永久代中。 永久代是有大小限制的,因此如果加载的类太多,很有可能导致永久代内存溢出,即万恶的java.la 阅读全文
posted @ 2020-04-26 23:13 寻尘向阳 阅读(523) 评论(0) 推荐(0) 编辑
摘要: ~~~上一篇章了解到了JVM内存分布,之所以把堆区放在第二篇来讲,是因为堆在我们整个JVM学习过程中起着最为关键和重要的角色,同时对于我而言,这块有必要着重详细地记录下笔记。~~~ 学习java之初,我们知道类中创建的实例对象、数组都是存放在堆区(Heap),对象的引用、局部变量存放栈区(Stack 阅读全文
posted @ 2020-04-25 00:31 寻尘向阳 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 内存是非常重要的系统资源,是硬盘和CPU的中间仓库和桥梁,承载着操作系统和应用程序的实时运行。JVM 内存布局规定了 Java 在运行过程中内存申请、分配、管理的策略,保证了 JVM 的高效稳定运行。 【注:JVM内存布局(内存结构)和JMM内存模型是两个不同的概念】 图例所示是java8以上的内存 阅读全文
posted @ 2020-04-24 13:42 寻尘向阳 阅读(111) 评论(0) 推荐(0) 编辑