メインコンテンツ

Code Prover の同時実行の自動検出を有効にする (-enable-concurrency-detection)

マルチスレッド関数の特定ファミリの自動検出

説明

このオプションは Code Prover 解析のみに影響します。

解析で POSIX®、VxWorks®、Windows®、μC/OS III、およびその他のマルチスレッド関数を自動検出するかどうかを指定します。

オプションの設定

以下のいずれかの方法を使用してオプションを設定します。

  • Polyspace® ユーザー インターフェイス (デスクトップ製品のみ): プロジェクト構成で [マルチタスキング] ノードを選択してから、このオプションを選択します。このオプションのその他の要件については、依存関係 (Polyspace Code Prover)を参照してください。

  • Polyspace Platform ユーザー インターフェイス (デスクトップ製品のみ): プロジェクト構成の [静的解析] タブで [マルチタスキング] ノードを選択してから、このオプションを選択します。このオプションのその他の要件については、依存関係 (Polyspace Code Prover)を参照してください。

  • コマンド ラインとオプション ファイル: オプション -enable-concurrency-detection を使用します。コマンド ライン情報を参照してください。

このオプションを使用する理由

このオプションを使用すると、Polyspace では、使用しているマルチスレッド関数からマルチタスキング モデルが判断されます。Bug Finder では、同時実行の自動検出は既定で有効になっています。Code Prover では、同時実行の自動検出を明示的に有効にしなければなりません。

場合によっては、同時実行の自動検出を使用すると、Code Prover 解析の速度が低下する可能性があります。その場合は、このオプションを有効にせず、マルチタスキング モデルを明示的に指定することを選択できます。Polyspace マルチタスキング解析の手動設定を参照してください。

設定

オン

サポートされているいずれかのマルチタスキング用関数を使用すると、解析によってコードからマルチタスキング モデルが自動的に検出されます。

スレッドの自動検出でサポートされるマルチタスキング関数と制限のリストについては、Polyspace でのスレッド作成とクリティカル セクションの自動検出を参照してください。

オフ (既定の設定)

解析では、コードからのマルチタスキング モデルの検出を試みません。

マルチタスク モデルを手動で構成する場合は、を参照してください。

依存関係

このオプションを有効にする場合、コードに main 関数が含まれていなければなりません。Code Prover オプションを使用して main を生成することはできません。

コマンド ライン情報

パラメーター: -enable-concurrency-detection
既定値: オフ
例 (Code Prover): polyspace-code-prover -sources file_name -enable-concurrency-detection
例 (Code Prover Server): polyspace-code-prover-server -sources file_name -enable-concurrency-detection

バージョン履歴

すべて展開する