データをクエリするスレッドと同じデータを更新するIOイベントを同期するときに、いくつかの同時実行バグが潜んでいると思われるJavaコードを継承しました。ThreadSafeと呼ばれる静的分析ツールを試しています。これは、さまざまな同時実行性の問題(つまり、非同期に呼び出されたメソッドから同期されていないフィールドにアクセスしたフィールドと、コレクションへのアクセスの一貫性のない同期)を実際に検出します。
単体テストを作成してデータの競合を確実に再現することがどれほど難しいかを発見した後、バグを確実に「再現」するためにThreadSafeに依存することが賢明かどうか疑問に思いましたか?私が求めているのは、バグをいつ修正したかを静的分析ツールに頼って教えても安全ですか?(もちろん、バグを修正するには、状況に応じてそれぞれを理解する必要があります)。