
java
Yahui_
Java后端开发工程师,python后端开发工程师,主要从事推荐系统服务研发,机器学习初学者
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
volatile的内存语义
1. volatile的用法volatile用于修饰共享变量,当多线程同时访问一个共享变量时,volatile能保证线程读到的该变量的值一定是最后写入的结果,也就是说volatile保证了变量修改的可见性。这意味着volatile能用于线程间通信。2. volatile的特性可见性。对一个volatile的读,一定是对该变量最后写入的结果; 原子性。对任意volatile变量的读/写...原创 2019-03-09 14:49:56 · 213 阅读 · 0 评论 -
final域的内存语义
目录1. final关键字的语义2. 如何保证final的语义1. final关键字的语义 final修饰基本数据类型变量时,该变量的值在初始化后就不可改变了; final修饰引用类型变量时,该变量在初始化后不能再执行赋值操作,也就是改变量指向的内存地址不能再改变,但是该变量所指向的内存中的数据是可以被改变的。 2. 如何保证final的语义final关键字保证...原创 2019-03-09 16:30:59 · 304 阅读 · 0 评论 -
线程安全的延迟初始化的实现
几个延迟初始化的例子,其中包含非线程安全的和线程安全的,自己可以现在心里判断一下哪些是安全的哪些是不安全的。下面是用例类:class Instance {}class UnsafeLazyInit { private static Instance instance; public static Instance getInstance() { i...原创 2019-03-15 20:25:23 · 277 阅读 · 0 评论