pub fn timeout_add_local_once<F>(interval: Duration, func: F) -> SourceIdwhere
F: FnOnce() + 'static,
Expand description
Adds a closure to be called by the default main loop at regular intervals with millisecond granularity.
func
will be called repeatedly every interval
milliseconds until it
returns ControlFlow::Break
. Precise timing is not guaranteed, the timeout may
be delayed by other events. Prefer timeout_add_seconds
when millisecond
precision is not necessary.
The default main loop almost always is the main loop of the main thread. Thus, the closure is called on the main thread.
Different to timeout_add()
, this does not require func
to be
Send
but can only be called from the thread that owns the main context.
This function panics if called from a different thread than the one that owns the main context.
In comparison to timeout_add_local()
, this only requires func
to be
FnOnce
, and will automatically return ControlFlow::Break
.