主要内容

为 Code Prover 启用自动并发检测 (-enable-concurrency-detection)

自动检测某些系列的多线程函数

描述

此选项仅影响 Code Prover 分析。

指定分析是否必须自动检测 POSIX®、VxWorks®、Windows®、μC/OS III 和其他多线程函数。

设置选项

使用以下方法之一设置选项:

  • Polyspace® 用户界面(仅限桌面端产品):在您的工程配置中,选择多任务节点,然后选择此选项。有关此选项的其他要求,请参阅依赖关系

  • Polyspace 平台用户界面(仅限桌面端产品):在您的工程配置中,在静态分析选项卡上,选择多任务节点,然后选择此选项。有关此选项的其他要求,请参阅依赖关系

  • 命令行和选项文件:请使用 -enable-concurrency-detection 选项。请参阅命令行信息

为何使用此选项

使用此选项时,Polyspace 会根据您使用的多线程函数确定您的多任务模型。在 Bug Finder 中,系统默认启用自动并发检测。在 Code Prover 中,您必须显式启用自动并发检测。

在某些情况下,使用自动并发检测可能会拖慢 Code Prover 分析速度。在这些情况下,您可以选择不启用此选项,并显式指定您的多任务模型。请参阅手动配置 Polyspace 多任务分析

设置

打开

如果您使用了支持多任务的函数,则分析会自动从您的代码中检测多任务模型。

有关线程自动检测中支持的多任务函数和限制的列表,请参阅Auto-Detection of Thread Creation and Critical Section in 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

版本历史记录

全部展开