import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class VolatoleAtomicityDemo {
public volatile static int inc = 0;
public void increase() {
inc++;
}
public static void main(String[] args) throws InterruptedException {
ExecutorService threadPool = Executors.newFixedThreadPool(5);
VolatoleAtomicityDemo volatoleAtomicityDemo = new VolatoleAtomicityDemo();
for (int i = 0; i < 5; i++) {
threadPool.execute(() -> {
for (int j = 0; j < 2002; j++) {
volatoleAtomicityDemo.increase();
}
});
}
Thread.sleep(1500);
System.out.println(inc);
threadPool.shutdown();
}
}