diff options
| author | Dario Nieuwenhuis <[email protected]> | 2020-12-29 00:04:58 +0100 |
|---|---|---|
| committer | Dario Nieuwenhuis <[email protected]> | 2020-12-29 00:04:58 +0100 |
| commit | b01a88a839c2ac1eec68442f6cddf0c0a887cfa7 (patch) | |
| tree | 07a4b54cd0529f03bbd6bd09ef9ddac10657c4af | |
| parent | 267ec334ac766097efb4c847c14b6e2fde44f9af (diff) | |
Do not run timer queue if no alarm is set.
| -rw-r--r-- | embassy/src/executor/mod.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/embassy/src/executor/mod.rs b/embassy/src/executor/mod.rs index c1ec3832a..845d94c2c 100644 --- a/embassy/src/executor/mod.rs +++ b/embassy/src/executor/mod.rs | |||
| @@ -214,9 +214,11 @@ impl Executor { | |||
| 214 | /// Runs the executor until the queue is empty. | 214 | /// Runs the executor until the queue is empty. |
| 215 | pub fn run(&self) { | 215 | pub fn run(&self) { |
| 216 | unsafe { | 216 | unsafe { |
| 217 | self.timer_queue.dequeue_expired(Instant::now(), |p| { | 217 | if self.alarm.is_some() { |
| 218 | self.enqueue(p); | 218 | self.timer_queue.dequeue_expired(Instant::now(), |p| { |
| 219 | }); | 219 | self.enqueue(p); |
| 220 | }); | ||
| 221 | } | ||
| 220 | 222 | ||
| 221 | self.run_queue.dequeue_all(|p| { | 223 | self.run_queue.dequeue_all(|p| { |
| 222 | let header = &*p; | 224 | let header = &*p; |
