---
title: aclrtCreateEventExWithFlag
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/runtimeapi/aclcppdevg_03_0081.html
sourcePath: /source/zh/canncommercial/900/API/runtimeapi/aclcppdevg_03_0081.html
indexId: 8ae8cee931f26832281075f1e7294ceadddc7635a812b5f2ddc894f675b526f568
---
# aclrtCreateEventExWithFlag

#### 产品支持情况

| 产品 | 是否支持 |
| --- | --- |
| Atlas 350 加速卡 | √ |
| Atlas A3 训练系列产品 / Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品 / Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | √ |
| Atlas 推理系列产品 | √ |
| Atlas 训练系列产品 | √ |


#### 功能说明

创建带flag的Event，不同flag的Event用于不同的功能。支持创建Event时携带多个flag（按位进行或操作），从而同时使能对应flag的功能。创建Event时，Event资源不受硬件限制。


#### 函数原型

```
aclError aclrtCreateEventExWithFlag(aclrtEvent *event, uint32_t flag)
```


#### 参数说明

| 参数名 | 输入/输出 | 说明 |
| --- | --- | --- |
| event | 输出 | Event的指针。类型定义请参见aclrtEvent。 |
| flag | 输入 | Event指针的flag。 当前支持将flag设置为如下宏： ACL\_EVENT\_TIME\_LINE：使能该bit表示创建的Event需要记录时间戳信息。注意：使能时间戳功能会影响Event相关接口的性能。 ACL\_EVENT\_SYNC：使能该bit表示创建的Event支持多Stream间的同步。 ACL\_EVENT\_CAPTURE\_STREAM\_PROGRESS：使能该bit表示创建的Event用于跟踪stream的任务执行进度。 ACL\_EVENT\_IPC：使能该bit表示创建的Event用于进程间通信，详细说明请参见aclrtIpcGetEventHandle。注意：该flag不支持与其他flag进行位或操作。本flag创建出来的Event不支持在以下接口或场景中使用：aclrtResetEvent、aclrtQueryEvent、aclrtQueryEventWaitStatus、aclrtEventElapsedTime、aclrtEventGetTimestamp、aclrtGetEventId、模型捕获场景（参见aclmdlRICaptureBegin中的说明），否则返回报错。 宏的定义如下： \#define ACL\_EVENT\_TIME\_LINE 0x00000008U \#define ACL\_EVENT\_SYNC 0x00000001U \#define ACL\_EVENT\_CAPTURE\_STREAM\_PROGRESS 0x00000002U \#define ACL\_EVENT\_IPC 0x00000040U |


#### 返回值说明

返回0表示成功，返回其他值表示失败，请参见aclError。


#### 约束说明

采用本API创建的Event，不支持在以下接口中使用：aclrtResetEvent、aclrtQueryEvent、aclrtQueryEventWaitStatus，否则返回报错。

调用本接口创建Event时，flag为bitmap，支持将flag设置为单个宏、或者对多个宏进行或操作。若flag参数值不包含ACL_EVENT_SYNC宏，则不支持在aclrtStreamWaitEvent接口中使用本接口创建的Event。若flag参数值包含ACL_EVENT_SYNC宏，并不会实际申请Event资源，只有在调用aclrtRecordEvent接口时，才会进行资源申请，因此在调用aclrtRecordEvent时，可能会出现线程阻塞，等待Event资源的释放。

不同型号的硬件支持的Event数量不同，如下表所示：

| 型号 | 单个Device支持的Event最大数 |
| --- | --- |
| Atlas 推理系列产品 | 1023 |
| Atlas 训练系列产品 | 65535 |
| Atlas 350 加速卡 Atlas A3 训练系列产品 / Atlas A3 推理系列产品 Atlas A2 训练系列产品 / Atlas A2 推理系列产品 Atlas 200I/500 A2 推理产品 | 65536 |


#### 接口调用示例

接口调用示例，参见Event的创建与销毁(https://www.hiascend.comdocument/detail/zh/canncommercial/900/programug/acldevg/runtime_doc_dev_0022.html)。
