# AtomicIntegerExample
import [Link].*;
public class AtomicIntegerExample {
public static void main(String[] args) {
AtomicInteger atmint = new AtomicInteger(0);
Thread producer = new Thread(new Producer(atmint));
Thread consumer = new Thread(new Consumer(atmint));
[Link]();
[Link]();
try {
[Link]();
[Link]();
} catch (InterruptedException s) {}
[Link]("result: atmint="+[Link]());
}
}
class Producer implements Runnable{
private AtomicInteger atm;
public Producer(AtomicInteger atmval) {
[Link] = atmval;
}
public void run() {
for (int i = 0; i < 10000002; i++) {
[Link](); // atm++;
}
}
}
class Consumer implements Runnable{
private AtomicInteger atm;
public Consumer(AtomicInteger atmval) {
[Link] = atmval;
}
public void run() {
for (int i = 0; i < 10000000; i++) {
[Link](); // atm--;
}
}
}