pub struct WakeGroupSynchronousProxy { /* private fields */ }
Implementations§
Source§impl WakeGroupSynchronousProxy
impl WakeGroupSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<WakeGroupEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<WakeGroupEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn wait_for_data(
&self,
___deadline: MonotonicInstant,
) -> Result<WakeGroupWaitForDataResponse, Error>
pub fn wait_for_data( &self, ___deadline: MonotonicInstant, ) -> Result<WakeGroupWaitForDataResponse, Error>
Registers the client to be woken up (in the form of a response) when there is incoming data available for any of the resources registered with this wake group.
Note that the client is required to “arm” this hanging get by calling
Arm
in order to ensure a response. Once the WaitForData
call has
returned, the next call to the method will hang until Arm
has been
called again and new data has arrived. In other words, Arm
re-arms
the hanging get and should be called when a response is required in
order to be woken up.
If the caller is responsible for keeping the system awake while handling the incoming data, the netstack will delegate (baton-pass) a lease to the caller that it can retain until it is ready to allow the system to suspend.
Sourcepub fn arm(&self, ___deadline: MonotonicInstant) -> Result<(), Error>
pub fn arm(&self, ___deadline: MonotonicInstant) -> Result<(), Error>
Notifies the netstack that the client has handled any previous
WaitForData
response that has arrived on the channel, and expects to
be woken up again when data arrives, in the form of a response to the
pending WaitForData
call.
In other words, calling this method “re-arms” the hanging get.
Trait Implementations§
Source§impl Debug for WakeGroupSynchronousProxy
impl Debug for WakeGroupSynchronousProxy
Source§impl From<Channel> for WakeGroupSynchronousProxy
impl From<Channel> for WakeGroupSynchronousProxy
Source§impl From<WakeGroupSynchronousProxy> for Handle
impl From<WakeGroupSynchronousProxy> for Handle
Source§fn from(value: WakeGroupSynchronousProxy) -> Self
fn from(value: WakeGroupSynchronousProxy) -> Self
Source§impl FromClient for WakeGroupSynchronousProxy
impl FromClient for WakeGroupSynchronousProxy
Source§type Protocol = WakeGroupMarker
type Protocol = WakeGroupMarker
Source§fn from_client(value: ClientEnd<WakeGroupMarker>) -> Self
fn from_client(value: ClientEnd<WakeGroupMarker>) -> Self
Source§impl SynchronousProxy for WakeGroupSynchronousProxy
impl SynchronousProxy for WakeGroupSynchronousProxy
Source§type Proxy = WakeGroupProxy
type Proxy = WakeGroupProxy
Source§type Protocol = WakeGroupMarker
type Protocol = WakeGroupMarker
Proxy
controls.