# Meeting 2023-02-01
* [ ] Don't forget the meeting with Asahi Lina tomorrow ;-)
https://github.com/Rust-for-Linux/linux/pull/884
* [ ] sleep in `async`
```rust=
let e = Executor::try_new_owned(...)?
e.spawn(async || { // spawns a task, let's say `t1`, and `t1` holds one refereneces of `e`
Delay(10000).await; // wait for 10000 seconds, this will add a timer which holds one reference to `t1`
});
drop(e); // stop `e`, clean up the queue, revoke futures.
// reference count fo `t1` is 1 (held by timer closure), reference count of `e` is 1 (held by `t1`).
<10000 seconds later, timer fired>
// in timer handler
waker.wake(); // `waker` is `t1` and `waker` is consumed.
// Task::drop() -> Executor::drop() -> BoxQueue::drop() -> destroy_workqueue() -> sleep!!!
// sleep in timer handler
```