Skip spawning task for background_executor.timer(Duration::ZERO)
(#21729)
Release Notes: - N/A
This commit is contained in:
parent
e5f3a683f0
commit
16ecbafa7a
1 changed files with 3 additions and 0 deletions
|
@ -328,6 +328,9 @@ impl BackgroundExecutor {
|
|||
/// Depending on other concurrent tasks the elapsed duration may be longer
|
||||
/// than requested.
|
||||
pub fn timer(&self, duration: Duration) -> Task<()> {
|
||||
if duration.is_zero() {
|
||||
return Task::ready(());
|
||||
}
|
||||
let (runnable, task) = async_task::spawn(async move {}, {
|
||||
let dispatcher = self.dispatcher.clone();
|
||||
move |runnable| dispatcher.dispatch_after(duration, runnable)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue