pub struct ManagedDispatcherImpl { /* private fields */ }Expand description
A dispatcher implementation with a run loop built on standard library primitives. It is what a dispatcher uses until the platform installs its own implementation, and what headless platforms can use directly.
The wake-up state is shared with other threads; everything else belongs to the loop thread.
Implementations§
Source§impl ManagedDispatcherImpl
impl ManagedDispatcherImpl
pub fn new( input_provider: Option<Rc<dyn IManagedDispatcherInputProvider>>, ) -> Self
Trait Implementations§
Source§impl IControlledDispatcherImpl for ManagedDispatcherImpl
impl IControlledDispatcherImpl for ManagedDispatcherImpl
Source§fn run_loop(&self, token: CancellationToken)
fn run_loop(&self, token: CancellationToken)
Runs the event loop until
token is canceled.Source§impl IDispatcherImpl for ManagedDispatcherImpl
impl IDispatcherImpl for ManagedDispatcherImpl
fn current_thread_is_loop_thread(&self) -> bool
Source§fn signal(&self)
fn signal(&self)
Asynchronously triggers the
signaled callback.
Called on the loop thread; other threads go through
signal_handle.Source§fn signal_handle(&self) -> Arc<dyn IDispatcherSignal> ⓘ
fn signal_handle(&self) -> Arc<dyn IDispatcherSignal> ⓘ
The thread-safe handle that does what
signal does.Source§fn signaled(&self) -> &DispatcherImplEvent
fn signaled(&self) -> &DispatcherImplEvent
Raised on the loop thread in response to a signal.
Source§fn timer(&self) -> &DispatcherImplEvent
fn timer(&self) -> &DispatcherImplEvent
Raised on the loop thread when the timer set by
update_timer is due.Source§fn update_timer(&self, due_time_in_ms: Option<i64>)
fn update_timer(&self, due_time_in_ms: Option<i64>)
Sets (or clears) the time at which
timer is raised.Source§fn as_pending_input(&self) -> Option<&dyn IDispatcherImplWithPendingInput>
fn as_pending_input(&self) -> Option<&dyn IDispatcherImplWithPendingInput>
Returns
self when the implementation can report pending input.Source§fn as_explicit_background_processing(
&self,
) -> Option<&dyn IDispatcherImplWithExplicitBackgroundProcessing>
fn as_explicit_background_processing( &self, ) -> Option<&dyn IDispatcherImplWithExplicitBackgroundProcessing>
Returns
self when the implementation supports explicit background
processing requests.Source§fn as_controlled(&self) -> Option<&dyn IControlledDispatcherImpl>
fn as_controlled(&self) -> Option<&dyn IControlledDispatcherImpl>
Returns
self when the implementation can run the event loop.Source§impl IDispatcherImplWithExplicitBackgroundProcessing for ManagedDispatcherImpl
impl IDispatcherImplWithExplicitBackgroundProcessing for ManagedDispatcherImpl
Source§fn ready_for_background_processing(&self) -> &DispatcherImplEvent
fn ready_for_background_processing(&self) -> &DispatcherImplEvent
Raised on the loop thread once input has been handled after a call to
request_background_processing.fn request_background_processing(&self)
Source§impl IDispatcherImplWithPendingInput for ManagedDispatcherImpl
impl IDispatcherImplWithPendingInput for ManagedDispatcherImpl
Source§fn can_query_pending_input(&self) -> bool
fn can_query_pending_input(&self) -> bool
Checks if the dispatcher implementation can query pending input.
Source§fn has_pending_input(&self) -> bool
fn has_pending_input(&self) -> bool
Checks if there is pending user input.
Auto Trait Implementations§
impl !Freeze for ManagedDispatcherImpl
impl !RefUnwindSafe for ManagedDispatcherImpl
impl !Send for ManagedDispatcherImpl
impl !Sync for ManagedDispatcherImpl
impl !UnwindSafe for ManagedDispatcherImpl
impl Unpin for ManagedDispatcherImpl
impl UnsafeUnpin for ManagedDispatcherImpl
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
Source§impl<T> ClassDefaults for Twhere
T: ?Sized,
impl<T> ClassDefaults for Twhere
T: ?Sized,
Source§fn static_constructor()
fn static_constructor()
The static constructor of a type: work done once per thread, after
the properties of the type are registered and before its first
instance exists (class handlers,
affects_render, metadata
overrides). Read more