2017.11.11 04:16
przykład, który pokazuje, po co w Javie jest volatile
Oto przykład, który pokazuje, po co w Javie jest volatile:
public class FikuMiku {
private static boolean x = true;
public static void main(String[] args) {
new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(3000);
x = false;
} catch (InterruptedException ex) {}
}
}).start();
while (x) {}
System.out.println("AAA!");
}
}
Ten program uruchomiony na Javie 1.8.0_131 pod Windowsami nigdy nie kończy działania. Kiedy prze deklaracji pola x dopisać volatile - kończy.
komentarze:
powrót na stronę główną
RSS