サーブレットスレッドの安全性の問題

スレッドの安全性の問題とは何ですか

マルチスレッド1.存在
2.変更共有データベースが存在する
複数のスレッドが同時に同じデータを変更するユーザは、データカバレッジデータを変更するように変更され、データを修正するために読み取ることができません独自のデータ修正。

データは、JVMスレッドの安全性の問題の存在について分析しました

1.スタックメモリ
スタックメモリは、データが共有されることはありませんここで、各スレッドのJVMスタックを作成し、複数列です。スタックフレームスタック内のローカル変数の追加の方法は、この方法は、ローカル変数が消え、スタックフレームはスタックをポップ、終了します。スレッドの安全性は存在しません。
2.ヒープメモリ
JVMは、ヒープメモリを存在し、メンバ変数が複数のスレッドによってアクセス可能なヒープメモリに作成されたオブジェクトを、共有されています。これらの値は、スレッド安全性の問題を修正します。
3.メソッド領域
JVM唯一の方法エリア、メソッド領域における静的変数と定数があります。定数が存在しない場合、変更することができず、静的変数は、複数のスレッドで共有され、セキュリティスレッド静的変数があります。

サーブレットスレッドの安全性の問題を解決

1.メンバ変数の定義はアクセスできません、ローカル変数を使用します。
2.スレッド同期メカニズムは、同期。
3.スレッドの安全性の問題を制御するために、スレッドのアクセス数を記録するカウンタを作成します。

公開された114元の記事 ウォンの賞賛8 ビュー5486

おすすめ

転載: blog.csdn.net/OVO_LQ_Start/article/details/104734069