Javaでメンバのパラメータを処理するときにスレッドの安全性がすでに果たしているかどうかを知りたいと思います。Javaにおけるメソッドパラメータのスレッド安全性
あなたはAPI
boolean moreThanTen(long value) {
if(value > 10) return true;
else return false;
}
の方法この方法は、スレッドセーフであるだろうがあると?
すべてのスレッドはローカル変数に対して独自のスタックを持ち、プリミティブはすべてこのローカルスタックに格納されていると思います。
私に不安を与えているのは、long
が2つの別々の読み取りであり、したがってスレッドセーフではないという事実だけです。
私の質問です:私はメソッドのパラメータが原子的にコピーされることを確認できますか?したがって、プリミティブをパラメータとして使用する場合(float
/long
)、ローカル変数のスレッドセーフティへのコピー中に問題になることはありませんか?
ありがとうございました。
可変状態がないことは、メソッドがスレッドセーフであることを意味します。 – Andreas