various reasonsの場合、synchronized(this)
は避けるべきです。しかし、私が遭遇したいくつかの立派なコードは、コンストラクタに次のように使用します。synchronized(this)とsynchronized(ClassName.class)の違いは何ですか?
public SomeClass(Context context) {
if (double_checked_lock == null) {
synchronized (SomeClass.class) {
if (double_checked_lock == null) {
// some code here
}
}
}
}
は本当にsynchronized(this)
とsynchronized(SomeClass.class)
の違いはありますか?
+1。これにより、クラスロックとオブジェクトロックがより明確になります。私はこれ以上何も見つけられませんでした。 *短いと理解しやすい* – Ravi