Struct calloop::EventLoop [−][src]
pub struct EventLoop<'l, Data> { /* fields omitted */ }
Expand description
An event loop
This loop can host several event sources, that can be dynamically added or removed.
Implementations
Create a new event loop
Fails if the initialization of the polling system failed.
Retrieve a loop handle
Dispatch pending events to their callbacks
If some sources have events available, their callbacks will be immediatly called.
Otherwise this will wait until an event is receive or the provided timeout
is reached. If timeout
is None
, it will wait without a duration limit.
Once pending events have been processed or the timeout is reached, all pending idle callbacks will be fired before this method returns.
Get a signal to stop this event loop from running
To be used in conjunction with the run()
method.
Run this event loop
This will repeatedly try to dispatch events (see the dispatch()
method) on
this event loop, waiting at most timeout
every time.
Between each dispatch wait, your provided callback will be called.
You can use the get_signal()
method to retrieve a way to stop or wakeup
the event loop from anywhere.