mirror of
https://github.com/fafhrd91/actix-net
synced 2025-06-26 20:57:43 +02:00
Add methods to check LocalWaker registration state
This commit is contained in:
@ -34,11 +34,22 @@ impl LocalWaker {
|
||||
}
|
||||
}
|
||||
|
||||
#[inline]
|
||||
/// Check if waker has been registered.
|
||||
pub fn is_registed(&self) -> bool {
|
||||
unsafe { (*self.waker.get()).is_some() }
|
||||
}
|
||||
|
||||
#[inline]
|
||||
/// Registers the waker to be notified on calls to `wake`.
|
||||
pub fn register(&self, waker: &Waker) {
|
||||
///
|
||||
/// Returns `true` if waker was registered before.
|
||||
pub fn register(&self, waker: &Waker) -> bool {
|
||||
unsafe {
|
||||
*self.waker.get() = Some(waker.clone());
|
||||
let w = self.waker.get();
|
||||
let is_registered = (*w).is_some();
|
||||
*w = Some(waker.clone());
|
||||
is_registered
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user