摘要
建立新工作。
宣告
#include <zircon/syscalls.h>
zx_status_t zx_job_create(zx_handle_t parent_job,
uint32_t options,
zx_handle_t* out);
說明
zx_job_create()
會建立新的子項工作物件,
父項工作。
成功處理後,系統會傳回新工作的控制代碼。
核心會追蹤並限制「高度」也就是工作 距離根工作距離在符合下列條件的父項下建立工作是違法行為: 高度超過內部「最大高度」值。 執行這類工作)。
工作控制代碼可能正在等待 (TODO(cpu):展開此內容)
權限
parent_job 必須是 ZX_OBJ_TYPE_JOB
類型,且包含 ZX_RIGHT_MANAGE_JOB
。
傳回值
zx_job_create()
會傳回 ZX_OK
和新工作的控制代碼
(透過) 成功的故事。失敗時,錯誤的值為負值
。
錯誤
ZX_ERR_BAD_HANDLE
parent_job 不是有效的帳號代碼。
ZX_ERR_WRONG_TYPE
parent_job 不是工作帳號代碼。
ZX_ERR_INVALID_ARGS
options 為非零,或 out 為無效指標。
ZX_ERR_ACCESS_DENIED
parent_job 不含 ZX_RIGHT_WRITE
或
右邊是ZX_RIGHT_MANAGE_JOB
。
ZX_ERR_OUT_OF_RANGE
parent_job 的高度過大,因此無法建立子項工作。
ZX_ERR_NO_MEMORY
因記憶體不足而失敗。
使用者空間無法妥善處理這種 (異常) 錯誤。
在日後的版本中不會再發生這個錯誤。
ZX_ERR_BAD_STATE
父項工作物件處於無效狀態。