摘要
觸發虛擬中斷物件。
宣告
#include <zircon/syscalls.h>
zx_status_t zx_interrupt_trigger(zx_handle_t handle,
uint32_t options,
zx_time_t timestamp);
說明
zx_interrupt_trigger()
用於觸發虛擬中斷中斷物件,導致中斷訊息封包傳送至已繫結的埠 (如果已繫結至埠),或 zx_interrupt_wait()
傳回 (如果正在等待此中斷)。
options 必須為零。
時間戳記預設會解讀為 ZX_CLOCK_BOOT
上的時間戳記。不過,如果中斷事件是使用 ZX_INTERRUPT_TIMESTAMP_MONO
選項建立,則系統會將此時間戳記解讀為 ZX_CLOCK_MONOTONIC
上的時間戳記。
權限
handle 必須是 ZX_OBJ_TYPE_INTERRUPT
類型,且包含 ZX_RIGHT_SIGNAL
。
傳回值
zx_interrupt_trigger()
會在成功時傳回 ZX_OK
。如果失敗,系統會傳回負值錯誤值。
錯誤
ZX_ERR_BAD_HANDLE
handle 是無效的 handle。
ZX_ERR_WRONG_TYPE
handle 並非中斷物件。
ZX_ERR_BAD_STATE
handle 不是虛擬中斷。
ZX_ERR_CANCELED
在 handle 上呼叫 zx_interrupt_destroy()
。
ZX_ERR_ACCESS_DENIED
handle 缺少 ZX_RIGHT_SIGNAL
。
ZX_ERR_INVALID_ARGS
options 不為零。
另請參閱
zx_handle_close()
zx_interrupt_ack()
zx_interrupt_bind()
zx_interrupt_create()
zx_interrupt_destroy()
zx_interrupt_wait()
zx_port_wait()