以下のスニペットのような(本番!)コードに遭遇しました:
synchronized(some_object) {
some_object = new some_object()
}
これはあらゆる種類の恐ろしい競合状態の影響を受けると予想され、新しいオブジェクトが作成されると、2番目のスレッドがこのブロックに入る可能性があります。私のJavaチョップは、上記の予想される動作を明確に述べるのに十分ではないので、これをリファクタリングする前に、皆さんが何を言わなければならないのか興味があります。