設定は次のとおりです。エンティティクラスには、遅延ロードされる他のエンティティのコレクションがあります。秘訣は、データ関連の作業を実行する必要があることです(たとえば、コレクションの要素を使用して特定のチェックサムを計算したい)。
ここでの秘訣は、「データ計算中に誰かがエンティティを更新した」などの競合状態を絶対に避けたいということです。通常の状況では、ゲッター/セッターの同期を宣言するだけで、満足します。しかし、私が理解している限り、他のスレッドがデータベースからエンティティの状態を更新することを決定した場合、チェックサムを計算している最中に、「同期された」メソッドを完全に無視します(フィールドに直接アクセスします)。
私は間違っているかもしれません。したがって、問題は、最初のチェックサム計算時に、エンティティの一部またはエンティティ全体へのアクセスを「ロック」する方法はありますか?
前もって感謝します!PS問題を説明するためのコードスニペットが必要な場合は、お知らせください。これまでのところ、質問はかなり明確だと思います。