摘要
擷取牛隻現任擁有者 (如果有的話)。
宣告
#include <zircon/syscalls.h>
zx_status_t zx_futex_get_owner(const zx_futex_t* value_ptr, zx_koid_t* koid);
說明
針對 value_ptr 指定的 futex 目前擁有者擷取 koid,如果目前沒有擁有者,則擷取 ZX_KOID_INVALID
。若是透過 futexe 建構同步基本功能,通常無需瞭解 Protex 的擁有權。此系統呼叫主要用於測試。
詳情請參閱「futex」中的擁有權和優先順序繼承。
權限
無。
傳回值
zx_futex_get_owner()
會在成功時傳回 ZX_OK
,Skoid 會在系統呼叫時持有 Futex 擁有者;如果沒有擁有者,則傳回 ZX_KOID_INVALID
。
錯誤
ZX_ERR_INVALID_ARGS
符合下列其中一項條件:
- value_ptr 不是有效的使用者空間指標,
- value_ptr 未與
sizeof(zx_futex_t)
邊界對齊。 - koid 不是有效的使用者空間指標,