摘要
建立計時器。
宣告
#include <zircon/syscalls.h>
zx_status_t zx_timer_create(uint32_t options,
zx_clock_t clock_id,
zx_handle_t* out);
說明
zx_timer_create()
會建立計時器,也就是可發出訊號的物件
指定的時間點。唯一有效的
clock_id 為 ZX_CLOCK_MONOTONIC
。
options 值可指定凝聚行為, 控制系統是否能提前或延後啟動時間 根據其他待處理的計時器而定
可能的值包括:
ZX_TIMER_SLACK_CENTER
ZX_TIMER_SLACK_EARLY
ZX_TIMER_SLACK_LATE
在選項中傳遞 0 相當於 ZX_TIMER_SLACK_CENTER
。
詳情請參閱計時器滑桿。
傳回的控制代碼包含 ZX_RIGHT_DUPLICATE
、ZX_RIGHT_TRANSFER
、
ZX_RIGHT_WRITE
、ZX_RIGHT_SIGNAL
、ZX_RIGHT_WAIT
和
ZX_RIGHT_INSPECT
權利。
權限
呼叫端工作政策必須允許 ZX_POL_NEW_TIMER
。
傳回值
zx_timer_create()
會在成功時傳回 ZX_OK
。活動
失敗時,系統會傳回負錯誤值。
錯誤
ZX_ERR_INVALID_ARGS
「out」是無效的指標、NULL 或
options 不是 ZX_TIMER_SLACK
值,clock_id 為
ZX_CLOCK_MONOTONIC
以外的任何值。
ZX_ERR_NO_MEMORY
因記憶體不足而失敗。
使用者空間無法妥善處理這種 (異常) 錯誤。
在日後的版本中不會再發生這個錯誤。