package com.freeflying.thread.volatil;
import java.util.concurrent.atomic.AtomicInteger;
/**
* 使用原子類進行i++操作實現線程安全
* @ClassName: AtomicClass
* @Description:
* @author freeflying
* @date 2018年7月14日
*/
public class AtomicClass {
public static void main(String[] args) {
AtomicClassEx atomicClassEx=new AtomicClassEx();
Thread t1=new Thread(atomicClassEx);
t1.start();
Thread t2=new Thread(atomicClassEx);
t2.start();
Thread t3=new Thread(atomicClassEx);
t3.start();
}
}
class AtomicClassEx extends Thread{
private AtomicInteger count=new AtomicInteger(0);
@Override
public void run() {
for (int i = 0; i < 10000; i++) {
System.out.println(count.incrementAndGet());
}
}
}
結果:
......
29995
29996
29997
29998
29999
30000