zx_futex_wake

摘要

喚醒一些在布丁上面等待的執行緒,並將毛衣的擁有權設定為什麼。

宣告

#include <zircon/syscalls.h>

zx_status_t zx_futex_wake(const zx_futex_t* value_ptr, uint32_t wake_count);

說明

喚醒 Futex 會導致 wake_count 執行緒正在等待 value_ptr Futex 喚醒。

喚醒零執行緒並不是錯誤狀況。為 value_ptr 傳入未分配的位址並非錯誤狀況。

擁有權

成功呼叫 zx_futex_wake() 後,無論喚醒計數為何,futex 擁有者都將設為不顯示任何內容。如要轉移 futex 的擁有權,請改用 zx_futex_wake_single_owner() 變化版本。zx_futex_wake_single_owner() 會嘗試從未來等候佇列中喚醒一個執行緒。如有至少一個要喚醒的執行緒,系統會將資料擁有者設為喚醒的執行緒。否則,未來不會有擁有者。

詳情請參閱「futex」中的擁有權和優先順序繼承

權限

無。

傳回值

zx_futex_wake() 會在成功時傳回 ZX_OK

錯誤

ZX_ERR_INVALID_ARGS value_ptr 未對齊。

另請參閱