-1
휘발성 및 AtomicInteger 연습을 사용하면 코드의 출력이 사라져야한다는 것을 알았습니다. 누군가가 나를 도울 수 있기를 바랍니다. 그것은 출력을해야이 문제휘발성 및 AtomicInteger 연습을 사용하면 출력 코드의 출력이 사라져야 함을 알게되었습니다.
를 해결하지만, 출력이 사라 코드는 여기에 있습니다 :
package volatil;
import java.util.concurrent.atomic.AtomicInteger;
public class Count extends Thread {
// private static volatile AtomicInteger key =new AtomicInteger(0);
private static AtomicInteger key = new AtomicInteger(1);
private static void add() {
for (int i = 0; i < 1000; i++) {
key.incrementAndGet();
}
System.out.println("now key is " + key);
}
@Override
public void run() {
add();
}
public static void main(String[] args) {
Count[] counts = new Count[10];
for (int i = 0; i < 10; i++) {
counts[i] = new Count();
}
for (int i = 10; i < 10; i++) {
counts[i].start();
}
}
}
이 코드는 동일 코드는 여기에 있습니다 :
package volatil;
public class Count extends Thread {
private static volatile int key;
private static void add() {
for (int i = 0; i < 1000; i++) {
key++;
}
System.out.println("now key is " + key);
}
@Override
public void run() {
add();
}
public static void main(String[] args) {
Count[] counts = new Count[10];
for (int i = 0; i < 10; i++) {
counts[i] = new Count();
}
for (int i = 10; i < 10; i++) {
counts[i].start();
}
}
}