zx_counter_add

摘要

為計數器新增值。

宣告

#include <zircon/syscalls.h>

zx_status_t zx_event_add(zx_handle_t handle, int64_t value);

說明

zx_counter_add() 會將 value 加到 handle 參照的計數器。

在加法結果後,如果計數器的值為:

  • 小於或等於零:系統會斷言 ZX_COUNTER_NON_POSITIVE,並取消斷言 ZX_COUNTER_POSITIVE

    • 大於零 - 系統會斷言 ZX_COUNTER_POSITIVE,並取消斷言 ZX_COUNTER_NON_POSITIVE

權限

handle 必須同時具備 ZX_RIGHT_READZX_RIGHT_WRITE。由於計數器的值可透過一系列精心設計的 zx_counter_add() 呼叫檢查 ZX_ERR_OUT_OF_RANGE 來判斷,因此無法建立無法讀取但可新增的計數器。

傳回值

zx_counter_add() 會在成功時傳回 ZX_OK

失敗時,系統會傳回錯誤值。

錯誤

ZX_ERR_WRONG_TYPE 如果 handle 不是計數器 handle。

如果 handle 沒有 ZX_RIGHT_WRITE,則為 ZX_ERR_ACCESS_DENIED

如果加法結果會溢位或欠位,就會傳回 ZX_ERR_OUT_OF_RANGE

另請參閱