跳到主要内容

aclrtQueryEventWaitStatus

aclrtResetEvent

函数功能

复位一个Event。用户需确保等待Stream中的任务都完成后,再复位Event,异步接口。

约束说明

在复位Event时,涉及重置Event的状态,Event的状态是在调用aclrtRecordEvent接口时记录,因此在调用aclrtResetEvent接口前,需要先调用aclrtRecordEvent接口。

接口调用顺序:aclrtCreateEvent-->aclrtRecordEvent-->aclrtResetEvent-->aclrtSynchronizeStream

函数原型

aclError aclrtResetEvent(aclrtEvent event, aclrtStream stream)

参数说明

参数名输入/输出说明
event输入待复位的Event。
stream输入指定Event所在的Stream。

返回值说明

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

父主题: 同步等待

aclrtQueryEvent

备注

须知

此接口后续版本会废弃,请使用aclrtQueryEventStatus接口。

函数功能

查询与本接口在同一线程中的aclrtRecordEvent接口所记录的Event是否执行完成。同步接口。

函数原型

aclError aclrtQueryEvent(aclrtEvent event, aclrtEventStatus *status)

参数说明

参数名输入/输出说明
event输入指定待查询的Event。
status输出Event状态的指针。

返回值说明

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

父主题: 同步等待

aclrtQueryEventStatus

函数功能

本接口是aclrtQueryEvent接口的扩展接口,可查询与本接口在同一线程或不同线程中的aclrtRecordEvent接口所记录的Event是否执行完成。同步接口。

函数原型

aclError aclrtQueryEventStatus(****aclrtEvent event, aclrtEventRecordedStatus *status)

参数说明

参数名输入/输出说明
event输入指定待查询的Event。
status输出Event状态的指针。

返回值说明

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

父主题: 同步等待

aclrtQueryEventWaitStatus

函数功能

调用aclrtStreamWaitEvent接口后,查询Stream是否接收到指定Event。如果多个Stream等待同一个Event,则多个Stream都接收到Event,通过该接口查询的Event状态才是已完成。同步接口。

函数原型

aclError aclrtQueryEventWaitStatus(****aclrtEvent event, aclrtEventWaitStatus *status)

参数说明

参数名输入/输出说明
event输入指定待查询的Event。
status输出Event状态的指针。

返回值说明

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

父主题: 同步等待

aclrtSynchronizeEvent

函数功能

阻塞应用程序运行,等待Event完成,同步接口。

函数原型

aclError aclrtSynchronizeEvent(aclrtEvent event)

参数说明

参数名输入/输出说明
event输入需等待的Event。

返回值说明

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

参考资源

接口调用示例,参见Event的同步等待示例代码

父主题: 同步等待

aclrtSynchronizeEventWithTimeout

函数功能

阻塞应用程序运行,等待Event完成,该接口是在接口aclrtSynchronizeEvent基础上进行了增强,支持用户设置超时时间,当应用程序异常时可根据所设置的超时时间自行退出。同步接口。

函数原型

aclError aclrtSynchronizeEventWithTimeout(aclrtEvent event, int32_t timeout)

参数说明

参数名输入/输出说明
event输入需等待的Event。
timeout输入接口的超时时间。 取值说明如下:
- -1:表示永久等待,和接口aclrtSynchronizeEvent功能一样;
- >0:配置具体的超时时间,单位是毫秒。

返回值说明

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

父主题: 同步等待

aclrtEventElapsedTime

函数功能

统计两个Event之间的耗时,同步接口。

约束说明

**接口调用顺序:调用aclrtCreateEvent/aclrtCreateEventWithFlag接口创建Event-->调用aclrtRecordEvent接口在同一个Stream中记录起始Event、结尾Event-->调用aclrtSynchronizeStream接口阻塞应用程序运行,直到指定Stream中的所有任务都完成-->**调用aclrtEventElapsedTime接口统计两个Event之间的耗时

函数原型

aclError aclrtEventElapsedTime(float *ms, aclrtEvent startEvent, aclrtEvent endEvent)

参数说明

参数名输入/输出说明
ms输出表示两个Event之间耗时的指针,单位为毫秒。
start输入起始Event。
end输入结尾Event。

返回值说明

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

父主题: 同步等待

在线提单