zx_object_get_child

摘要

提供具有子項物件的核心物件,請取得所提供核心物件 ID 所指定子項的控制代碼。

宣告

#include <zircon/syscalls.h>

zx_status_t zx_object_get_child(zx_handle_t handle,
                                uint64_t koid,
                                zx_rights_t rights,
                                zx_handle_t* out);

說明

zx_object_get_child() 會嘗試找出參照物件的子項 handle,其核心物件 ID 由 koid 指定。如果 物件存在,且要求的 rights 不大於所提供的值 由父項的處理常式處理,為指定子項物件的新控制代碼是 。

rights 可能是 ZX_RIGHT_SAME_RIGHTS,這也等同於擁有同等權利 帳號代碼上的那些功能。

如果物件是程序,可以取得物件所含的執行緒, 呼叫。

如果物件是 Job,其 (立即) 子項 JobsProcesses 該內容可透過此呼叫取得。

權限

handle 必須包含 ZX_RIGHT_ENUMERATE

傳回值

成功後,系統會傳回 ZX_OK,並透過「傳出」傳回所需子項物件的控制代碼。

錯誤

ZX_ERR_BAD_HANDLE 帳號代碼不是有效的帳號代碼。

ZX_ERR_WRONG_TYPE「處理常式」不是 ProcessJobResource

ZX_ERR_ACCESS_DENIED 帳號代碼缺少正確的 ZX_RIGHT_ENUMERATErights 屬性 處理常式中則沒有的權利。

ZX_ERR_NOT_FOUND 處理常式沒有核心物件 ID koid 的子項。

ZX_ERR_NO_MEMORY 因記憶體不足而失敗。 使用者空間無法妥善處理這種 (異常) 錯誤。 在日後的版本中不會再發生這個錯誤。

ZX_ERR_INVALID_ARGS「out」是無效的指標。

另請參閱