AtomicBooleanは、その値を次の場所に格納します。
private volatile int value;
次に、たとえば、その値の抽出は次のように行われます。
public final boolean get() {
return value != 0;
}
その背後にある理由は何ですか?なぜboolean
使われなかったのですか?
AtomicBooleanは、その値を次の場所に格納します。
private volatile int value;
次に、たとえば、その値の抽出は次のように行われます。
public final boolean get() {
return value != 0;
}
その背後にある理由は何ですか?なぜboolean
使われなかったのですか?
AFAIKint
は、さまざまなマシンタイプに実装できる最小のタイプのCAS操作です。
注:オブジェクトの割り当ては8バイトに揃えられているため、小さいタイプを使用してもメモリは節約されません。
これはおそらく、整数を使用し、コンペアアンドスワップ操作を提供するAtomic
同じベース( )に基づいていくつかのクラスをベースにできるようにするためです。Unsafe
実際の並行性は、内部の仕組みの良い説明を提供します。