マルチスレッドの質問なんですが、

・複数のスレッドで参照される変数にはvolatileキーワードが必須。
・値を更新するスレッドが1つだけの場合は、それだけでOK。
・複数スレッドで値を更新する場合はlock()して値を更新する。

この認識で合ってますか?