This crate provides a timeout queue based on [fibers
] crate.
```rust use fiberstimeoutqueue::TimeoutQueue; use std::time::Duration; use std::thread;
let mut queue = TimeoutQueue::new();
assert_eq!(queue.pop(), None); // queue
is empty
queue.push(1, Duration::frommillis(1000)); queue.push(2, Duration::frommillis(100)); queue.push(3, Duration::frommillis(10)); asserteq!(queue.pop(), None); // No expired items
thread::sleep(Duration::frommillis(50)); asserteq!(queue.pop(), Some(3)); // There is an expired item assert_eq!(queue.pop(), None); ```