排他処理には synchronized を用いればよいが・・・
volatile ってなんだろう??? スレッド処理を含むクラス群をコンパイルした時に どちらかで修飾してくれというエラーメッセージが出る時がある これはスレッドがフィールドをスレッド固有の作業領域に コピーして処理を行い・・・その後フィールドに戻すのためで タイミングによっては値が保証されないため コンパイル時に警告しているのである そのため synchronized で立ち入り禁止にしてしまうか(メソッド、ステート) volatile で修飾しスレッド間の作業領域として 共有のフィールドを使用するよう宣言するのである(フィールド修飾子) PR |
![]() |
![]() |
![]() |
|
![]() |
トラックバックURL |
![]() |
忍者ブログ [PR] |