JVM
文章平均质量分 59
正橙橙橙橙
这个作者很懒,什么都没留下…
展开
-
原子性问题
什么是原子性? 一系列的操作,要么全部执行成功,要么全部不执行,不会出现执行一半的情况,是不可分割的。 Java中的原子操作有哪些? 除了long和double之外的基本类型(int byte char boolean short float) 所有引用类型的赋值操作 java.concurrent.Atomic.*包中所有类的原子操作 那么为什么long和double不是原子性的呢? 从官方文档我们可以一探究竟,首先Lon...原创 2021-10-02 12:24:12 · 310 阅读 · 0 评论 -
单例模式-设计模式
老韩讲解过程中,统计本机cpu数目时,提到了单例。 单例模式是一种设计的模式,因为很多东西在整个应用的过程中只需要一个全局的对象。不需要多个,例如重复点击回收站,返回的是同一个对象,没有必要创建多个对象。 优点: 在内存中只有一个对象,节省内存空间; 避免频繁的创建销毁对象,可以提高性能; 避免对共享资源的多重占用,简化访问; 为整个系统提供一个全局访问点。 缺点:1.不适用于变化频繁的对象 ?因为频繁变化的对象在一般过程中可以通过上一层进行功能的拓展。但是对于单例模式...原创 2021-09-30 15:35:34 · 159 阅读 · 0 评论 -
Volatile关键字
Volatile关键字的作用: 预防可见性问题,重排序问题。 Volatile是一种同步机制,比synchronized或者Lock相关类更轻量,因为使用Volatile并不会发生上下文切换等开销很大的行为。 一个变量被修饰成volatile,JVM就知道了这个变量可能会被并发修改。 但是,volatile是一个轻量级的,对应的能力也小,无法像synchronized一样能够对变量进行原子保护。volatile仅在很有限的场景下才能发挥作用。 案例...原创 2021-09-29 10:28:11 · 82 阅读 · 0 评论