:Java Hafıza Görünürlük aşağıdaki basitleştirilmiş sınıf için
public class MutableInteger {
private int value;
public MutableInteger(int initial) {
synchronized(this) { // is this necessary for memory visibility?
this.value = initial;
}
}
public synchronized int get() {
return this.value;
}
public synchronized void increment() {
this.value++;
}
...
}
Ben genel soru, yapıcı içinde başlangıç değeri ayarlarken senkronize edilmesi gereklidir senkronizasyon tarafından korunan değişken değişkenler için sanırım?
Neyi başarmaya çalışıyorsunuz? – biziclop
Yapılandırılırken aynı örnekte iki iş parçacığının olabileceğini göremiyorum, bu yüzden hayır diyorum. Eğer değer belki de statikse, ancak bu referansı değil, sınıf nesnesinde senkronize etmeniz gerekir. – Pace
@biziclop Sadece tüm kodlarım iş parçacığı güvenliği ve java bellek modelini daha iyi anlamak için doğru olduğundan emin olmaya çalışıyorum. – nikdeapen