embassy-time

Crates

0.2.0

Versions

default

Flavors

Module queue

Source
Expand description

Timer queue implementation

This module defines the interface a timer queue needs to implement to power the embassy_time module.

§Implementing a timer queue

§Linkage details

Check the documentation of the driver module for more information.

Similarly to driver, if there is none or multiple timer queues in the crate tree, linking will fail.

§Example

use core::task::Waker;

use embassy_time::Instant;
use embassy_time::queue::{TimerQueue};

struct MyTimerQueue{}; // not public!
embassy_time::timer_queue_impl!(static QUEUE: MyTimerQueue = MyTimerQueue{});

impl TimerQueue for MyTimerQueue {
    fn schedule_wake(&'static self, at: Instant, waker: &Waker) {
        todo!()
    }
}

Traits§

TimerQueue
Timer queue