mirror of
https://github.com/asterinas/asterinas.git
synced 2025-06-24 09:53:24 +00:00
Remove dead (un)register_observer
methods
This commit is contained in:
committed by
Tate, Hongliang Tian
parent
b88675c4e9
commit
5450d0bd71
@ -6,7 +6,7 @@ use aster_rights::{Read, ReadOp, TRights, Write, WriteOp};
|
|||||||
use aster_rights_proc::require;
|
use aster_rights_proc::require;
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
events::{IoEvents, Observer},
|
events::IoEvents,
|
||||||
prelude::*,
|
prelude::*,
|
||||||
process::signal::{PollHandle, Pollee},
|
process::signal::{PollHandle, Pollee},
|
||||||
util::{
|
util::{
|
||||||
@ -98,22 +98,6 @@ macro_rules! impl_common_methods_for_channel {
|
|||||||
pub fn poll(&self, mask: IoEvents, poller: Option<&mut PollHandle>) -> IoEvents {
|
pub fn poll(&self, mask: IoEvents, poller: Option<&mut PollHandle>) -> IoEvents {
|
||||||
self.this_end().pollee.poll(mask, poller)
|
self.this_end().pollee.poll(mask, poller)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn register_observer(
|
|
||||||
&self,
|
|
||||||
observer: Weak<dyn Observer<IoEvents>>,
|
|
||||||
mask: IoEvents,
|
|
||||||
) -> Result<()> {
|
|
||||||
self.this_end().pollee.register_observer(observer, mask);
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn unregister_observer(
|
|
||||||
&self,
|
|
||||||
observer: &Weak<dyn Observer<IoEvents>>,
|
|
||||||
) -> Option<Weak<dyn Observer<IoEvents>>> {
|
|
||||||
self.this_end().pollee.unregister_observer(observer)
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -64,34 +64,6 @@ impl Pollee {
|
|||||||
poller.pollees.push(Arc::downgrade(&self.inner));
|
poller.pollees.push(Arc::downgrade(&self.inner));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Register an IoEvents observer.
|
|
||||||
///
|
|
||||||
/// A registered observer will get notified (through its `on_events` method)
|
|
||||||
/// every time new events specified by the `mask` argument happen on the
|
|
||||||
/// pollee (through the `add_events` method).
|
|
||||||
///
|
|
||||||
/// If the given observer has already been registered, then its registered
|
|
||||||
/// event mask will be updated.
|
|
||||||
///
|
|
||||||
/// Note that the observer will always get notified of the events in
|
|
||||||
/// `IoEvents::ALWAYS_POLL` regardless of the value of `mask`.
|
|
||||||
pub fn register_observer(&self, observer: Weak<dyn Observer<IoEvents>>, mask: IoEvents) {
|
|
||||||
let mask = mask | IoEvents::ALWAYS_POLL;
|
|
||||||
self.inner.subject.register_observer(observer, mask);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Unregister an IoEvents observer.
|
|
||||||
///
|
|
||||||
/// If such an observer is found, then the registered observer will be
|
|
||||||
/// removed from the pollee and returned as the return value. Otherwise,
|
|
||||||
/// a `None` will be returned.
|
|
||||||
pub fn unregister_observer(
|
|
||||||
&self,
|
|
||||||
observer: &Weak<dyn Observer<IoEvents>>,
|
|
||||||
) -> Option<Weak<dyn Observer<IoEvents>>> {
|
|
||||||
self.inner.subject.unregister_observer(observer)
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Add some events to the pollee's state.
|
/// Add some events to the pollee's state.
|
||||||
///
|
///
|
||||||
/// This method wakes up all registered pollers that are interested in
|
/// This method wakes up all registered pollers that are interested in
|
||||||
|
Reference in New Issue
Block a user