EN JP CN

JD.UMC.WAIT

JD.UMC.WAIT

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

脆弱性とリスク

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

軽減と防止

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

例 1

11     void waitForCondition(Condition cond) {
12         try {
13             cond.wait();
14         } catch (InterruptedException e) {
15             return;
16         }
17     }
18     // corrected code
19     void waitForCondition2(Condition cond) {
20         try {
21             cond.await();
22         } catch (InterruptedException e) {
23             return;
24         }
25     }

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