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 至关重要。进程终止时,作业也将终止,就好像对其调用了 zx_task_kill()。所使用的返回代码将为 ZX_TASK_RETCODE_CRITICAL_PROCESS_KILL

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

如果 optionsZX_JOB_CRITICAL_PROCESS_RETCODE_NONZERO,则 job 只有在 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_NONZERO,或者 job 不是 process 的父项,也不是祖先实体。

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

ZX_ERR_ACCESS_DENIED 作业没有 ZX_RIGHT_DESTROY进程没有 ZX_RIGHT_WAIT

另请参阅