自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 java实现同步的几种手段

实现同步的几种手段 关于内存可见性 在jvm的内存模型中,每个线程将自己管理的变量从主内存从读取到自己的副本中,此后对这些变量的修改都是在副本中进行。至于什么时候会将副本中更新的值刷回到主内存中,这是不一定的。因此,如果没有同步,一个线程对某一共享变量进行修改后,另一线程并不知道该值变化了。 原子性问题 cpu会对指令进行重排序,以达到更加高效的运行速度,单线程的情况下这不会有问题,但是多线程情况下,可能会出现脏读的情况。 synchronized关键字 与object对象的wait()、notify()、

2020-07-18 00:10:03 207

原创 JVM学习笔记——对引用(reference)的理解

JVM学习笔记——对引用(reference)的理解 结合《Java编程思想》与《深入理解JVM虚拟机》这两本书谈谈java中的引用。 Object a; 这便创建了Object对象的一个引用,但该引用并未与任何实例对象相关联,如果我们输出a的值,得到的结果将会是null。 a = new Object; 这时a才与一个Object对象关联起来。 《Java编程思想》中举了一个很好的例子介绍引用: 将这一场景看作是用遥控器(引用)来操纵电视机(对象)。只要拥有这个电视的遥控器,便可以对这个电视进行相关操

2020-05-25 01:49:53 351

原创 JVM学习笔记——java内存区域与内存溢出异常

JVM学习笔记——java内存区域与内存溢出异常java内存区域程序计数器Java虚拟机栈本地方法栈Java堆方法区 学习《深入理解Java虚拟机:JVM高级特性与最佳实践》的笔记。 java内存区域 程序计数器 程序计数器是一块较小的内存空间,可以看做是当前线程执行字节码的行号指示器。为保证每次线程切换过程中,都会恢复到该线程正确的位置,每条线程都需要一个程序计数器。因此,程序计数器是线程私有的。 Java虚拟机栈 Java虚拟机栈,虚拟接栈描述的是java方法执行的线程内存模型:每个方法被执行的时候,J

2020-05-25 00:40:42 222

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除