Trait magenta::AsHandleRef
[−]
[src]
pub trait AsHandleRef { fn as_handle_ref(&self) -> HandleRef; fn raw_handle(&self) -> mx_handle_t { ... } fn signal_handle(
&self,
clear_mask: Signals,
set_mask: Signals
) -> Result<(), Status> { ... } fn wait_handle(
&self,
signals: Signals,
deadline: mx_time_t
) -> Result<Signals, Status> { ... } fn wait_async_handle(
&self,
port: &Port,
key: u64,
signals: Signals,
options: WaitAsyncOpts
) -> Result<(), Status> { ... } }
A trait to get a reference to the underlying handle of an object.
Required Methods
fn as_handle_ref(&self) -> HandleRef
Get a reference to the handle. One important use of such a reference is
for object_wait_many
.
Provided Methods
fn raw_handle(&self) -> mx_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).
fn signal_handle(
&self,
clear_mask: Signals,
set_mask: Signals
) -> Result<(), Status>
&self,
clear_mask: Signals,
set_mask: Signals
) -> Result<(), Status>
Set and clear userspace-accessible signal bits on an object. Wraps the mx_object_signal syscall.
fn wait_handle(
&self,
signals: Signals,
deadline: mx_time_t
) -> Result<Signals, Status>
&self,
signals: Signals,
deadline: mx_time_t
) -> Result<Signals, Status>
Waits on a handle. Wraps the mx_object_wait_one syscall.
fn wait_async_handle(
&self,
port: &Port,
key: u64,
signals: Signals,
options: WaitAsyncOpts
) -> Result<(), Status>
&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. mx_object_wait_async syscall.
Implementors
impl AsHandleRef for Channel
impl AsHandleRef for Event
impl AsHandleRef for EventPair
impl AsHandleRef for Fifo
impl AsHandleRef for Job
impl AsHandleRef for Port
impl AsHandleRef for Process
impl AsHandleRef for Socket
impl AsHandleRef for Timer
impl AsHandleRef for Thread
impl AsHandleRef for Vmo
impl<'a> AsHandleRef for HandleRef<'a>
impl AsHandleRef for Handle