摘要
将值写入计数器。
声明
#include <zircon/syscalls.h>
zx_status_t zx_event_write(zx_handle_t handle, int64_t value);
说明
zx_counter_write()
会将 value 写入 handle 引用的计数器,并根据需要断言/取消断言信号。如需了解信号的断言/取消断言条件,请参阅 zx_counter_add()
。
由于对计数器的并发操作可能会相互交错,因此“计数信号量”同步协议的实现应使用 zx_counter_add()
,而不是一系列 zx_counter_read()
、修改、zx_counter_write()
。
权限
handle 必须包含 ZX_RIGHT_WRITE
。
返回值
zx_counter_write()
在成功时会返回 ZX_OK
。
失败时,系统会返回错误值。
错误
如果 handle 不是计数器句柄,则为 ZX_ERR_WRONG_TYPE
。
如果 handle 没有 ZX_RIGHT_WRITE
,则会引发 ZX_ERR_ACCESS_DENIED
。
如果 value 是无效的指针,则为 ZX_ERR_INVALID_ARGS
。
另请参阅
zx_object_wait_async()
zx_object_wait_many()
zx_object_wait_one()
zx_counter_create()
zx_counter_add()
zx_counter_read()