C and C++ Binaries


CONCURRENCY.DEADLOCK : デッドロック

要旨

デッドロックを引き起こしやすい WaitForSingleObject() の呼び出しがあります。

より一般的なデッドロックのチェックを行うには、次のクラスを有効にしてください。 Conflicting Lock OrderLocked TwiceNested LocksTask Delay Function

プロパティ

クラス名 Deadlock
日本語クラス名 デッドロック
クラス分類 信頼性 (reliability)
ニーモニック CONCURRENCY.DEADLOCK
カテゴリー
MisraC2023 MisraC2023:D.5.2 There shall be no deadlocks between threads
Misra2012 Misra2012:D.5.2 There shall be no deadlocks between threads
CWE CWE:833 Deadlock
対応言語 C および C++ で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで有効になっています。チェックを無効にするにはプロジェクト設定ファイル (configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += discard class="Deadlock"

#include <windows.h>

DWORD f()
{
    return WaitForSingleObject(GetCurrentProcess(), INFINITE); /* 'Deadlock' warning issued here */
}

ワーニングが引き起こされる時

関数が、自分自身のプロセスもしくはスレッドの待ち状態となる時。

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。