pub struct WakeSynchronousProxy { /* private fields */ }
Implementations§
Source§impl WakeSynchronousProxy
impl WakeSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<WakeEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<WakeEvent, 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 set_and_wait(
&self,
deadline: BootInstant,
setup_done: Event,
alarm_id: &str,
___deadline: MonotonicInstant,
) -> Result<ClientSideBatonManagementSetAndWaitResult, Error>
pub fn set_and_wait( &self, deadline: BootInstant, setup_done: Event, alarm_id: &str, ___deadline: MonotonicInstant, ) -> Result<ClientSideBatonManagementSetAndWaitResult, Error>
Sets a wake alarm with the provided parameters, and waits for the alarm to fire.
The caller MAY request multiple alarms open concurrently. However, the callee is not required to support any specific number of open alarms.
The call to SetAndWait will hang until the alarm fires, or an error occurs.
In the event that the caller requests more open alarms than the callee is willing to provide, the callee SHOULD reject the new request, but honor previous requests.
§Return value
keep_alive
: a handle which prevents system suspend so long as it is held alive.
This method will return when the alarm set in the call fires.
§Protocol Errors
- [DROPPED] if the alarm has been canceled by using [Cancel].
- [UNSPECIFIED] a new error mode has occurred, please report this for investigatin.
- [INTERNAL] is a bug: an internal fallible call (which is expected to be unlikely to fail) has failed somehow. Please report this for investigation.
Trait Implementations§
Source§impl Debug for WakeSynchronousProxy
impl Debug for WakeSynchronousProxy
Source§impl SynchronousProxy for WakeSynchronousProxy
impl SynchronousProxy for WakeSynchronousProxy
Source§type Protocol = WakeMarker
type Protocol = WakeMarker
The protocol which this
Proxy
controls.Source§fn from_channel(inner: Channel) -> Self
fn from_channel(inner: Channel) -> Self
Create a proxy over the given channel.
Source§fn into_channel(self) -> Channel
fn into_channel(self) -> Channel
Convert the proxy back into a channel.
Source§fn as_channel(&self) -> &Channel
fn as_channel(&self) -> &Channel
Get a reference to the proxy’s underlying channel. Read more
Auto Trait Implementations§
impl Freeze for WakeSynchronousProxy
impl RefUnwindSafe for WakeSynchronousProxy
impl Send for WakeSynchronousProxy
impl Sync for WakeSynchronousProxy
impl Unpin for WakeSynchronousProxy
impl UnwindSafe for WakeSynchronousProxy
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