很有意思的一个用法
http://blog.youkuaiyun.com/id19870510/article/details/8590243
使用 AtomicBoolean 高效并发处理 “只初始化一次” 的功能要求:
1 |
private static AtomicBoolean
initialized = new AtomicBoolean( false ); |
2 |
3 |
public void init() |
4 |
{ |
5 |
if (
initialized.compareAndSet( false , true )
) |
6 |
{ |
7 |
//
这里放置初始化代码.... |
8 |
} |
9 |
} |
普通方式:
1 |
public static volatile initialized
= false ; |
2 |
3 |
public void init() |
4 |
{ |
5 |
if (
initialized == false ){ |
6 |
initialized
= true ; |
7 |
//
这里初始化代码.... |
8 |
} |
9 |
} |