---
title: 订阅接口使用说明
description: "不能与Profiling数据采集接口的接口交叉调用：aclprofModelSubscribe接口和aclprofModelUnSubscribe接口之间不能调用aclprofInit接口、aclprofStart接口、aclprofStop接口和aclprofFinalize接口。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/runtimeapi/aclcppdevg_03_1278.html
sourcePath: /source/zh/canncommercial/900/API/runtimeapi/aclcppdevg_03_1278.html
indexId: 6a81a04a03a06ad7e9404ce0880a2eeac336019fb4624351087de72f485e2d3968
---
# 订阅接口使用说明

#### 总体约束

不能与Profiling数据采集接口的接口交叉调用：aclprofModelSubscribe接口和aclprofModelUnSubscribe接口之间不能调用aclprofInit接口、aclprofStart接口、aclprofStop接口和aclprofFinalize接口。


#### 接口约束说明

- 接口调用要求：

  -     aclprofModelSubscribe
接口在模型执行之前调用，若在模型执行过程中调用    aclprofModelSubscribe
接口，Profiling采集到的数据为调用    aclprofModelSubscribe
接口之后的数据，可能导致数据不完整。
  -     aclprofModelSubscribe
接口需与    aclprofModelUnSubscribe
接口配对使用，不能在调用    aclprofModelUnSubscribe
接口前，多次调用
    aclprofModelSubscribe接口重复订阅相同的模型。

  - 不能调用    aclprofModelSubscribe
接口订阅不存在的模型ID。
  - 不能调用    aclprofModelUnSubscribe
接口取消订阅不存在的模型ID或未订阅过的模型ID。
  - 如果在同一个Device上加载了多个模型，只能对多个模型下发同样的订阅配置。
- 接口调用顺序：

  - 建议的接口调用顺序如下：
    模型加载-->aclprofModelSubscribe接口-->aclprofGetOpDescSize接口-->aclprofGetOpNum接口-->aclprofGetOpType/aclprofGetOpName/aclprofGetOpStart/aclprofGetOpEnd/aclprofGetOpDuration/aclprofGetModelId接口-->aclprofModelUnSubscribe接口

  - 错误的接口调用顺序示例如下，以重复定义同一个模型为例：
    模型1加载-->aclprofModelSubscribe接口(指定模型1)-->aclprofModelSubscribe接口(指定模型1)-->aclprofModelUnSubscribe接口
