---
title: aclmdlExecuteAsyncV2
description: "根据aclmdlSetExecConfigOpt所配置的属性，执行模型推理，直到返回推理结果。该接口是在aclmdlExecuteAsync接口基础上进行了增强，支持在执行模型推理时控制Stream任务的超时时间、Event任务的超时时间。异步接口。"
url: https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/latest/Application%20Development%20Guide/aadgc/aclcppdevg_03_0133.html
sourcePath: /source/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Application Development Guide/aadgc/aclcppdevg_03_0133.html
indexId: 8233a253f6c6d48040d2fc40db5ab4c81b80140e0c7c96499f8fe58f9378e855105
---
# aclmdlExecuteAsyncV2

#### 函数功能

根据aclmdlSetExecConfigOpt所配置的属性，执行模型推理，直到返回推理结果。该接口是在aclmdlExecuteAsync接口基础上进行了增强，支持在执行模型推理时控制Stream任务的超时时间、Event任务的超时时间。异步接口。


Atlas 200/500 A2推理产品不支持该接口。


#### 约束说明

- 本接口需要配合其它接口一起使用，实现模型执行，接口调用顺序如下：

  1. 调用    aclmdlCreateExecConfigHandle
接口创建模型执行的配置对象。
  2. 多次调用    aclmdlSetExecConfigOpt
接口设置配置对象中每个属性的值。
  3. 调用aclmdlExecuteAsyncV2接口指定模型执行时需要的配置信息，并进行模型执行。
  4. 模型加载成功后，调用    aclmdlDestroyExecConfigHandle
接口销毁。
- 其他约束与  aclmdlExecuteAsync
一致。


#### 函数原型

aclError aclmdlExecuteAsyncV2(uint32_t modelId, const aclmdlDataset *input, aclmdlDataset *output, aclrtStream stream，const aclmdlExecConfigHandle* handle)


#### 参数说明

| 参数名 | 输入/输出 | 说明 |
| --- | --- | --- |
| modelId | 输入 | 指定需要执行推理的模型的ID。 调用aclmdlLoadFromFile接口/aclmdlLoadFromMem接口/aclmdlLoadFromFileWithMem接口/aclmdlLoadFromMemWithMem接口加载模型成功后，会返回模型ID。 |
| input | 输入 | 模型推理的输入数据的指针。 |
| output | 输出 | 模型推理的输出数据的指针。 |
| stream | 输入 | 指定Stream。 |
| handle | 输入 | 模型执行的配置对象的指针。与aclmdlSetExecConfigOpt中的handle保持一致。 |


#### 返回值说明

返回0表示成功，返回其它值表示失败。
