0

Struts 1 Action クラスに同期インスタンス メソッドがあることの意味を確認したいのですが?

何かのようなもの

public synchronized String checkAction(){ ... } 
4

1 に答える 1

4

これは、checkAction メソッドが、囲んでいるオブジェクトの固有のロック (Action クラスのオブジェクトのロック) によって同期されることを意味します。そのため、一度に 1 つのスレッドだけが checkAction メソッドにアクセスできます。

Struts 1 では、Action クラスはスレッドセーフではありません。そのため、複数のスレッド (複数のリクエストを処理するなど) が Action クラスの同じインスタンスにアクセスします。メソッドを同期する必要がありますか? 私にはわかりません。メソッドで何が起こっているかを知ることができるのはあなただけです。Action クラスのインスタンス変数にアクセスしたり、一度に 1 つのスレッドでしか実行できない何かを実行したりしない限り、同期はおそらく必要ありません。

于 2011-05-04T10:04:59.183 に答える