java用volatile或AtomicBoolean实现高效并发处理 (只初始化一次的功能要求)
来源:互联网 发布:虚拟主机绑定域名 编辑:程序博客网 时间:2024/05/22 11:50
最近碰到一个这样的功能要求:怎么在一个类里面,实现高效并发处理下只可以初始化一次的方法?
实现方式:
1)volatile方式:
/** * Created by Chengrui on 2015/7/28. */public class MyThread { private static volatile boolean initialized = false; public void init(){ if(initialized == false){ initialized = true; //here is the initialization code } }}
2)AtomicBoolean方式:
/** * Created by Chengrui on 2015/7/28. */public class MyThread { private static AtomicBoolean initialized = new AtomicBoolean(false); public void init(){ if(initialized.compareAndSet(false, true)){ //here is the initialization code } }}附:AtomicBoolean帮助文档:
0 0
- java用volatile或AtomicBoolean实现高效并发处理 (只初始化一次的功能要求)
- Java控制并发 AtomicBoolean Lock Volatile
- 用异或实现查找只出现一次的数字
- java 并发之AtomicBoolean、AtomicInteger
- 基于CAS思想的java并发AtomicBoolean实例详解
- java-利用synchronized实现volatile的功能
- java并发处理 synchronized volatile ActomicInteger的关系与区别
- 只可以初始化一次的类实例
- Java并发包:AtomicBoolean和AtomicReference
- Java并发编程(一)----深入分析Volatile的实现原理
- 【Java 并发系列】深入分析Volatile的实现原理
- 【1】Java 并发编程--深入分析Volatile的实现原理
- Java并发机制底层——Volatile的实现原理
- 【死磕Java并发】-----深入分析volatile的实现原理
- 死磕Java并发:深入分析volatile的实现原理
- 死磕 Java 并发 : 深入分析 volatile 的实现原理
- 深入分析Java并发中volatile的实现原理
- 深入分析Java并发中volatile的实现原理
- NYOJ-开心的小明
- nyoj苹果
- 输入以逗号分隔的整数,如123,234,345,456,111等,并以回车结束输入
- hdu杭电1434 幸福列车【优先队列】
- HDOJ 1870 愚人节的礼物(水题)(栈练习)
- java用volatile或AtomicBoolean实现高效并发处理 (只初始化一次的功能要求)
- Android自定义表情键盘与输入法键盘冲突
- ZOJ 1004Anagrams by Stack
- hdu5326_(优美的并查集解法)2015 Multi-University Training Contest 3(1011)
- Hibernate 缓存机制
- poj2068 Nim (博弈)
- 报错:System.Data”中不存在类型或命名空间名称“OracleClient
- java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map
- Class类,反射与注解