z_job_set_Critical

摘要

设置对作业至关重要的流程。

声明

#include <zircon/syscalls.h>

zx_status_t zx_job_set_critical(zx_handle_t job,
                                uint32_t options,
                                zx_handle_t process);

说明

process 设置为对 job 至关重要。当 process 终止时,job 将会 会终止,就像对其调用了 zx_task_kill() 一样。所用的返回代码将 为 ZX_TASK_RETCODE_CRITICAL_PROCESS_KILL

指定的 job 必须是 process 的父级或祖先。

如果 optionsZX_JOB_CRITICAL_PROCESS_RETCODE_NONZEROjob 将 只有在 process 具有非零返回代码时才会终止。

权限

job 必须具有 ZX_RIGHT_DESTROY

process 必须具有 ZX_RIGHT_WAIT

返回值

如果成功,zx_job_set_critical() 会返回 ZX_OK。如果失败, 返回负数。

错误

ZX_ERR_BAD_HANDLE jobprocess 不是有效的句柄。

ZX_ERR_WRONG_TYPE jobprocess 不是作业句柄。

ZX_ERR_INVALID_ARGS options 不为 0 或 ZX_JOB_CRITICAL_PROCESS_RETCODE_NONZEROjob 不是以下对象的父级: process 或祖先实体。

ZX_ERR_ALREADY_BOUND process 已设置为对作业至关重要。

ZX_ERR_ACCESS_DENIED 作业没有 ZX_RIGHT_DESTROY进程 不包含 ZX_RIGHT_WAIT

另请参阅