Zx_对象信号信号

摘要

向对象的对等方发送信号。

声明

#include <zircon/syscalls.h>

zx_status_t zx_object_signal_peer(zx_handle_t handle,
                                  uint32_t clear_mask,
                                  uint32_t set_mask);

说明

zx_object_signal_peer() 会在对象的对等方上断言和取消断言可从用户空间访问的信号位。对象对等是通道套接字FIFO事件对的另一个端点。

此调用对对象对等方的信号位的影响在调用完成之前一定会显现出来。

32 个信号中的大多数信号都预留给系统使用,并分配给每个对象函数(例如 ZX_CHANNEL_READABLEZX_TASK_TERMINATED)。有 8 个信号位可供用户空间进程视需要使用:ZX_USER_SIGNAL_0ZX_USER_SIGNAL_7

Eventpair 对象还允许控制 ZX_EVENTPAIR_SIGNALED 位。

首先使用 clear_mask 清除指示的所有位,然后使用 set_mask 设置指示的所有位。

权限

handle 必须包含 ZX_RIGHT_SIGNAL_PEER

返回值

zx_object_signal_peer() 会在成功时返回 ZX_OK。如果失败,系统会返回负错误值。

错误

ZX_ERR_BAD_HANDLE handle 不是有效的句柄。

ZX_ERR_ACCESS_DENIED handle 缺少正确的 ZX_RIGHT_SIGNAL_PEER

ZX_ERR_INVALID_ARGS clear_maskset_mask 包含不允许使用的位。

ZX_ERR_NOT_SUPPORTED 用于缺少对等体的对象。

ZX_ERR_PEER_CLOSED 对具有已关闭的对等方的对象调用。

另请参阅