JD.UMC.WAIT

JD.UMC.WAIT は、メソッドが java.util.concurrent.locks.Condition オブジェクト上で wait() を呼び出す場合に発生します。

脆弱性とリスク

このコードは、意図された結果を達成しません。

軽減と防止

Condition の待機は、Condition インターフェイスによって定義された await() メソッドの 1 つで実行する必要があります。

例 1

コピー
     void waitForCondition(Condition cond) {
         try {
             cond.wait();
         } catch (InterruptedException e) {
             return;
         }
     }
     // corrected code
     void waitForCondition2(Condition cond) {
         try {
             cond.await();
         } catch (InterruptedException e) {
             return;
         }
     }

JD.UMC.WAIT が 13 行目の呼び出しに対して報告されています。'cond.wait()' メソッドの呼び出しがあります。おそらく、'cond.await()' メソッドの間違いです。