pub struct Job(/* private fields */);
Expand description
An object representing a Zircon job.
As essentially a subtype of Handle
, it can be freely interconverted.
Implementations§
Source§impl Job
impl Job
Sourcepub fn create_child_job(&self) -> Result<Job, Status>
pub fn create_child_job(&self) -> Result<Job, Status>
Create a new job as a child of the current job.
Wraps the zx_job_create syscall.
Sourcepub fn create_child_process(
&self,
options: ProcessOptions,
name: &[u8],
) -> Result<(Process, Vmar), Status>
pub fn create_child_process( &self, options: ProcessOptions, name: &[u8], ) -> Result<(Process, Vmar), Status>
Create a new process as a child of the current job.
On success, returns a handle to the new process and a handle to the root of the new process’s address space.
Wraps the zx_process_create syscall.
Sourcepub fn info(&self) -> Result<JobInfo, Status>
pub fn info(&self) -> Result<JobInfo, Status>
Wraps the zx_object_get_info syscall for the ZX_INFO_JOB topic.
Sourcepub fn set_policy(&self, policy: JobPolicy) -> Result<(), Status>
pub fn set_policy(&self, policy: JobPolicy) -> Result<(), Status>
Wraps the zx_job_set_policy syscall.
Sourcepub fn set_critical(
&self,
opts: JobCriticalOptions,
process: &Process,
) -> Result<(), Status>
pub fn set_critical( &self, opts: JobCriticalOptions, process: &Process, ) -> Result<(), Status>
Wraps the zx_job_set_critical syscall.
Sourcepub fn processes(&self) -> Result<Vec<Koid>, Status>
pub fn processes(&self) -> Result<Vec<Koid>, Status>
Wraps the zx_object_get_info syscall for the ZX_INFO_JOB_PROCESSES topic.
Trait Implementations§
Source§impl AsHandleRef for Job
impl AsHandleRef for Job
Source§fn as_handle_ref(&self) -> HandleRef<'_>
fn as_handle_ref(&self) -> HandleRef<'_>
Get a reference to the handle. One important use of such a reference is
for
object_wait_many
.Source§fn raw_handle(&self) -> zx_handle_t
fn raw_handle(&self) -> zx_handle_t
Interpret the reference as a raw handle (an integer type). Two distinct
handles will have different raw values (so it can perhaps be used as a
key in a data structure).
Source§fn signal_handle(
&self,
clear_mask: Signals,
set_mask: Signals,
) -> Result<(), Status>
fn signal_handle( &self, clear_mask: Signals, set_mask: Signals, ) -> Result<(), Status>
Set and clear userspace-accessible signal bits on an object. Wraps the
zx_object_signal
syscall.
Source§fn wait_handle(
&self,
signals: Signals,
deadline: MonotonicInstant,
) -> Result<Signals, Status>
fn wait_handle( &self, signals: Signals, deadline: MonotonicInstant, ) -> Result<Signals, Status>
Waits on a handle. Wraps the
zx_object_wait_one
syscall.
Source§fn wait_async_handle(
&self,
port: &Port,
key: u64,
signals: Signals,
options: WaitAsyncOpts,
) -> Result<(), Status>
fn wait_async_handle( &self, port: &Port, key: u64, signals: Signals, options: WaitAsyncOpts, ) -> Result<(), Status>
Causes packet delivery on the given port when the object changes state and matches signals.
zx_object_wait_async
syscall.
Source§fn get_name(&self) -> Result<Name, Status>
fn get_name(&self) -> Result<Name, Status>
Get the Property::NAME property for this object. Read more
Source§fn set_name(&self, name: &Name) -> Result<(), Status>
fn set_name(&self, name: &Name) -> Result<(), Status>
Set the Property::NAME property for this object. Read more
Source§fn basic_info(&self) -> Result<HandleBasicInfo, Status>
fn basic_info(&self) -> Result<HandleBasicInfo, Status>
Wraps the
zx_object_get_info
syscall for the ZX_INFO_HANDLE_BASIC topic.
Source§fn count_info(&self) -> Result<HandleCountInfo, Status>
fn count_info(&self) -> Result<HandleCountInfo, Status>
Wraps the
zx_object_get_info
syscall for the ZX_INFO_HANDLE_COUNT topic.
Source§impl HandleBased for Job
impl HandleBased for Job
Source§fn duplicate_handle(&self, rights: Rights) -> Result<Self, Status>
fn duplicate_handle(&self, rights: Rights) -> Result<Self, Status>
Duplicate a handle, possibly reducing the rights available. Wraps the
zx_handle_duplicate
syscall.
Source§fn replace_handle(self, rights: Rights) -> Result<Self, Status>
fn replace_handle(self, rights: Rights) -> Result<Self, Status>
Create a replacement for a handle, possibly reducing the rights available. This invalidates
the original handle. Wraps the
zx_handle_replace
syscall.
Source§fn into_handle(self) -> Handle
fn into_handle(self) -> Handle
Converts the value into its inner handle. Read more
Source§fn into_raw(self) -> zx_handle_t
fn into_raw(self) -> zx_handle_t
Converts the handle into it’s raw representation. Read more
Source§fn from_handle(handle: Handle) -> Self
fn from_handle(handle: Handle) -> Self
Creates an instance of this type from a handle. Read more
Source§fn into_handle_based<H: HandleBased>(self) -> H
fn into_handle_based<H: HandleBased>(self) -> H
Creates an instance of another handle-based type from this value’s inner handle.
Source§fn from_handle_based<H: HandleBased>(h: H) -> Self
fn from_handle_based<H: HandleBased>(h: H) -> Self
Creates an instance of this type from the inner handle of another
handle-based type.
fn is_invalid_handle(&self) -> bool
Source§impl Ord for Job
impl Ord for Job
Source§impl PartialOrd for Job
impl PartialOrd for Job
Source§impl Task for Job
impl Task for Job
Source§fn create_exception_channel_with_opts(
&self,
opts: ExceptionChannelOptions,
) -> Result<Channel, Status>
fn create_exception_channel_with_opts( &self, opts: ExceptionChannelOptions, ) -> Result<Channel, Status>
Create an exception channel (with options) for the task. Read more
Source§fn create_exception_channel(&self) -> Result<Channel, Status>
fn create_exception_channel(&self) -> Result<Channel, Status>
Create an exception channel for the task. Read more
Source§fn get_runtime_info(&self) -> Result<TaskRuntimeInfo, Status>
fn get_runtime_info(&self) -> Result<TaskRuntimeInfo, Status>
Returns the runtime information for the task. Read more
impl Eq for Job
impl StructuralPartialEq for Job
Auto Trait Implementations§
impl Freeze for Job
impl RefUnwindSafe for Job
impl Send for Job
impl Sync for Job
impl Unpin for Job
impl UnwindSafe for Job
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more