を使用synchronized
している場合、同期されるオブジェクトは である必要がありますstatic
か?
編集: オブジェクトへの参照は静的でなければならないと言うつもりでした。私が読んでいた例の 1 つに、スレッドがクラス A で同期メソッドを使用するには、クラス A への参照が静的でなければならないことが記載されていることに気付きました。
それで、同期メソッドを呼び出すすべてのスレッドがインスタンスの同じコピーを使用するように、オブジェクトへの参照を静的にするのがルールなのかどうか疑問に思っていました。この例では、同期メソッドを使用して 1 から 10 までカウントします。したがって、この同期メソッドにアクセスする各スレッドは、それぞれ 1 から 10 をカウントする必要があります。静的なしでこれを試したところ、結果が正しくありませんでした。