摘要
建立事件配對。
宣告
#include <zircon/syscalls.h>
zx_status_t zx_eventpair_create(uint32_t options,
zx_handle_t* out0,
zx_handle_t* out1);
說明
zx_eventpair_create() 會建立事件組合,此為一組物件
可互相訊號
信號 ZX_EVENTPAIR_SIGNALED 和 ZX_USER_SIGNAL_n (其中 n 為 0 到 7)
可以透過 zx_object_signal() 設定或清除,這會修改
物件本身,或 zx_object_signal_peer(),這個檔案會修改
關閉其中一個物件的所有控點後,
ZX_EVENTPAIR_PEER_CLOSED 信號會斷言相對的物件。
新建立的帳號代碼包含 ZX_RIGHT_TRANSFER、
ZX_RIGHT_DUPLICATE、ZX_RIGHT_READ、ZX_RIGHT_WRITE、ZX_RIGHT_SIGNAL、
和 ZX_RIGHT_SIGNAL_PEER 權利。
目前尚不支援任何選項,因此 options 必須設為 0。
權限
呼叫端工作政策必須允許 ZX_POL_NEW_EVENTPAIR。
傳回值
zx_eventpair_create() 會在成功時傳回 ZX_OK。失敗時,具有 (負數)
錯誤代碼。
錯誤
ZX_ERR_INVALID_ARGS out0 或 out0 是無效的指標或 NULL。
ZX_ERR_NOT_SUPPORTED options 含有不支援的旗標集 (亦即,不是 0)。
ZX_ERR_NO_MEMORY 因記憶體不足而失敗。
使用者空間無法妥善處理這種 (異常) 錯誤。
在日後的版本中不會再發生這個錯誤。