Lines Matching full:queue
10 ($queue:ident) => {
11 $queue.enter(|cx, mut queue| queue.poll_expired(cx))
28 let mut queue = task::spawn(DelayQueue::new()); in single_immediate_delay() localVariable
29 let _key = queue.insert_at("foo", Instant::now()); in single_immediate_delay()
34 assert_ready_some!(poll!(queue)); in single_immediate_delay()
36 let entry = assert_ready!(poll!(queue)); in single_immediate_delay()
44 let mut queue = task::spawn(DelayQueue::new()); in multi_immediate_delays() localVariable
46 let _k = queue.insert_at("1", Instant::now()); in multi_immediate_delays()
47 let _k = queue.insert_at("2", Instant::now()); in multi_immediate_delays()
48 let _k = queue.insert_at("3", Instant::now()); in multi_immediate_delays()
55 let entry = assert_ready_some!(poll!(queue)); in multi_immediate_delays()
59 let entry = assert_ready!(poll!(queue)); in multi_immediate_delays()
73 let mut queue = task::spawn(DelayQueue::new()); in single_short_delay() localVariable
74 let _key = queue.insert_at("foo", Instant::now() + ms(5)); in single_short_delay()
76 assert_pending!(poll!(queue)); in single_short_delay()
80 assert!(!queue.is_woken()); in single_short_delay()
84 assert!(queue.is_woken()); in single_short_delay()
86 let entry = assert_ready_some!(poll!(queue)); in single_short_delay()
89 let entry = assert_ready!(poll!(queue)); in single_short_delay()
100 let mut queue = task::spawn(DelayQueue::new()); in multi_delay_at_start() localVariable
104 let _key = queue.insert_at(i, Instant::now() + ms(i)); in multi_delay_at_start()
107 assert_pending!(poll!(queue)); in multi_delay_at_start()
108 assert!(!queue.is_woken()); in multi_delay_at_start()
117 assert!(queue.is_woken()); in multi_delay_at_start()
118 assert_ready!(poll!(queue)); in multi_delay_at_start()
119 assert_pending!(poll!(queue)); in multi_delay_at_start()
120 } else if queue.is_woken() { in multi_delay_at_start()
129 assert_pending!(poll!(queue)); in multi_delay_at_start()
140 let mut queue = task::spawn(DelayQueue::new()); in insert_in_past_fires_immediately() localVariable
145 queue.insert_at("foo", now); in insert_in_past_fires_immediately()
147 assert_ready!(poll!(queue)); in insert_in_past_fires_immediately()
155 let mut queue = task::spawn(DelayQueue::new()); in remove_entry() localVariable
157 let key = queue.insert_at("foo", Instant::now() + ms(5)); in remove_entry()
159 assert_pending!(poll!(queue)); in remove_entry()
161 let entry = queue.remove(&key); in remove_entry()
166 let entry = assert_ready!(poll!(queue)); in remove_entry()
174 let mut queue = task::spawn(DelayQueue::new()); in reset_entry() localVariable
177 let key = queue.insert_at("foo", now + ms(5)); in reset_entry()
179 assert_pending!(poll!(queue)); in reset_entry()
182 queue.reset_at(&key, now + ms(10)); in reset_entry()
184 assert_pending!(poll!(queue)); in reset_entry()
188 assert!(!queue.is_woken()); in reset_entry()
190 assert_pending!(poll!(queue)); in reset_entry()
194 assert!(queue.is_woken()); in reset_entry()
196 let entry = assert_ready_some!(poll!(queue)); in reset_entry()
199 let entry = assert_ready!(poll!(queue)); in reset_entry()
208 let mut queue = task::spawn(DelayQueue::new()); in reset_much_later() localVariable
213 let key = queue.insert_at("foo", now + ms(200)); in reset_much_later()
214 assert_pending!(poll!(queue)); in reset_much_later()
218 queue.reset_at(&key, now + ms(10)); in reset_much_later()
222 assert!(queue.is_woken()); in reset_much_later()
230 let mut queue = task::spawn(DelayQueue::new()); in reset_twice() localVariable
235 let key = queue.insert_at("foo", now + ms(200)); in reset_twice()
237 assert_pending!(poll!(queue)); in reset_twice()
241 queue.reset_at(&key, now + ms(50)); in reset_twice()
245 queue.reset_at(&key, now + ms(40)); in reset_twice()
249 assert!(queue.is_woken()); in reset_twice()
253 /// that it is placed directly on the expired queue, reset the entry to a
254 /// deadline in the future. Validate that this leaves the entry and queue in an
260 let mut queue = task::spawn(DelayQueue::new()); in repeatedly_reset_entry_inserted_as_expired() localVariable
263 let key = queue.insert_at("foo", now - ms(100)); in repeatedly_reset_entry_inserted_as_expired()
265 queue.reset_at(&key, now + ms(100)); in repeatedly_reset_entry_inserted_as_expired()
266 queue.reset_at(&key, now + ms(50)); in repeatedly_reset_entry_inserted_as_expired()
268 assert_pending!(poll!(queue)); in repeatedly_reset_entry_inserted_as_expired()
272 assert!(queue.is_woken()); in repeatedly_reset_entry_inserted_as_expired()
274 let entry = assert_ready_some!(poll!(queue)).into_inner(); in repeatedly_reset_entry_inserted_as_expired()
277 let entry = assert_ready!(poll!(queue)); in repeatedly_reset_entry_inserted_as_expired()
285 let mut queue = DelayQueue::new(); in remove_expired_item() localVariable
291 let key = queue.insert_at("foo", now); in remove_expired_item()
293 let entry = queue.remove(&key); in remove_expired_item()
305 let mut queue = task::spawn(DelayQueue::new()); in remove_at_timer_wheel_threshold() localVariable
309 let key1 = queue.insert_at("foo", now + ms(64)); in remove_at_timer_wheel_threshold()
310 let key2 = queue.insert_at("bar", now + ms(64)); in remove_at_timer_wheel_threshold()
314 let entry = assert_ready_some!(poll!(queue)).into_inner(); in remove_at_timer_wheel_threshold()
318 let entry = queue.remove(&key2).into_inner(); in remove_at_timer_wheel_threshold()
322 let entry = queue.remove(&key1).into_inner(); in remove_at_timer_wheel_threshold()
333 let mut queue = task::spawn(DelayQueue::new()); in expires_before_last_insert() localVariable
337 queue.insert_at("foo", now + ms(10_000)); in expires_before_last_insert()
340 assert_pending!(poll!(queue)); in expires_before_last_insert()
343 queue.insert_at("bar", now + ms(600)); in expires_before_last_insert()
345 assert_pending!(poll!(queue)); in expires_before_last_insert()
349 assert!(queue.is_woken()); in expires_before_last_insert()
351 let entry = assert_ready_some!(poll!(queue)).into_inner(); in expires_before_last_insert()
359 let mut queue = task::spawn(DelayQueue::new()); in multi_reset() localVariable
363 let one = queue.insert_at("one", now + ms(200)); in multi_reset()
364 let two = queue.insert_at("two", now + ms(250)); in multi_reset()
366 assert_pending!(poll!(queue)); in multi_reset()
368 queue.reset_at(&one, now + ms(300)); in multi_reset()
369 queue.reset_at(&two, now + ms(350)); in multi_reset()
370 queue.reset_at(&one, now + ms(400)); in multi_reset()
374 assert_pending!(poll!(queue)); in multi_reset()
378 let entry = assert_ready_some!(poll!(queue)); in multi_reset()
381 assert_pending!(poll!(queue)); in multi_reset()
385 let entry = assert_ready_some!(poll!(queue)); in multi_reset()
388 let entry = assert_ready!(poll!(queue)); in multi_reset()
396 let mut queue = task::spawn(DelayQueue::new()); in expire_first_key_when_reset_to_expire_earlier() localVariable
400 let one = queue.insert_at("one", now + ms(200)); in expire_first_key_when_reset_to_expire_earlier()
401 queue.insert_at("two", now + ms(250)); in expire_first_key_when_reset_to_expire_earlier()
403 assert_pending!(poll!(queue)); in expire_first_key_when_reset_to_expire_earlier()
405 queue.reset_at(&one, now + ms(100)); in expire_first_key_when_reset_to_expire_earlier()
409 assert!(queue.is_woken()); in expire_first_key_when_reset_to_expire_earlier()
411 let entry = assert_ready_some!(poll!(queue)).into_inner(); in expire_first_key_when_reset_to_expire_earlier()
419 let mut queue = task::spawn(DelayQueue::new()); in expire_second_key_when_reset_to_expire_earlier() localVariable
423 queue.insert_at("one", now + ms(200)); in expire_second_key_when_reset_to_expire_earlier()
424 let two = queue.insert_at("two", now + ms(250)); in expire_second_key_when_reset_to_expire_earlier()
426 assert_pending!(poll!(queue)); in expire_second_key_when_reset_to_expire_earlier()
428 queue.reset_at(&two, now + ms(100)); in expire_second_key_when_reset_to_expire_earlier()
432 assert!(queue.is_woken()); in expire_second_key_when_reset_to_expire_earlier()
434 let entry = assert_ready_some!(poll!(queue)).into_inner(); in expire_second_key_when_reset_to_expire_earlier()
442 let mut queue = task::spawn(DelayQueue::new()); in reset_first_expiring_item_to_expire_later() localVariable
446 let one = queue.insert_at("one", now + ms(200)); in reset_first_expiring_item_to_expire_later()
447 let _two = queue.insert_at("two", now + ms(250)); in reset_first_expiring_item_to_expire_later()
449 assert_pending!(poll!(queue)); in reset_first_expiring_item_to_expire_later()
451 queue.reset_at(&one, now + ms(300)); in reset_first_expiring_item_to_expire_later()
454 assert!(queue.is_woken()); in reset_first_expiring_item_to_expire_later()
456 let entry = assert_ready_some!(poll!(queue)).into_inner(); in reset_first_expiring_item_to_expire_later()
464 let mut queue = task::spawn(DelayQueue::new()); in insert_before_first_after_poll() localVariable
468 let _one = queue.insert_at("one", now + ms(200)); in insert_before_first_after_poll()
470 assert_pending!(poll!(queue)); in insert_before_first_after_poll()
472 let _two = queue.insert_at("two", now + ms(100)); in insert_before_first_after_poll()
476 assert_pending!(poll!(queue)); in insert_before_first_after_poll()
480 assert!(queue.is_woken()); in insert_before_first_after_poll()
482 let entry = assert_ready_some!(poll!(queue)).into_inner(); in insert_before_first_after_poll()
490 let mut queue = task::spawn(DelayQueue::new()); in insert_after_ready_poll() localVariable
494 queue.insert_at("1", now + ms(100)); in insert_after_ready_poll()
495 queue.insert_at("2", now + ms(100)); in insert_after_ready_poll()
496 queue.insert_at("3", now + ms(100)); in insert_after_ready_poll()
498 assert_pending!(poll!(queue)); in insert_after_ready_poll()
502 assert!(queue.is_woken()); in insert_after_ready_poll()
507 let entry = assert_ready_some!(poll!(queue)); in insert_after_ready_poll()
509 queue.insert_at("foo", now + ms(500)); in insert_after_ready_poll()
523 let mut queue = task::spawn(DelayQueue::new()); in reset_later_after_slot_starts() localVariable
527 let foo = queue.insert_at("foo", now + ms(100)); in reset_later_after_slot_starts()
529 assert_pending!(poll!(queue)); in reset_later_after_slot_starts()
533 assert!(!queue.is_woken()); in reset_later_after_slot_starts()
535 // At this point the queue hasn't been polled, so `elapsed` on the wheel in reset_later_after_slot_starts()
536 // for the queue is still at 0 and hence the 1ms resolution slots cover in reset_later_after_slot_starts()
538 // the [64-128) slot. As the queue knows that the first entry is within in reset_later_after_slot_starts()
541 queue.reset_at(&foo, now + ms(120)); in reset_later_after_slot_starts()
542 assert!(queue.is_woken()); in reset_later_after_slot_starts()
544 assert_pending!(poll!(queue)); in reset_later_after_slot_starts()
547 assert!(!queue.is_woken()); in reset_later_after_slot_starts()
550 assert!(queue.is_woken()); in reset_later_after_slot_starts()
552 let entry = assert_ready_some!(poll!(queue)).into_inner(); in reset_later_after_slot_starts()
559 let mut queue = task::spawn(DelayQueue::new()); in reset_inserted_expired() localVariable
562 let key = queue.insert_at("foo", now - ms(100)); in reset_inserted_expired()
565 queue.reset_at(&key, now + ms(100)); in reset_inserted_expired()
567 assert_eq!(1, queue.len()); in reset_inserted_expired()
571 let entry = assert_ready_some!(poll!(queue)).into_inner(); in reset_inserted_expired()
574 assert_eq!(queue.len(), 0); in reset_inserted_expired()
581 let mut queue = task::spawn(DelayQueue::new()); in reset_earlier_after_slot_starts() localVariable
585 let foo = queue.insert_at("foo", now + ms(200)); in reset_earlier_after_slot_starts()
587 assert_pending!(poll!(queue)); in reset_earlier_after_slot_starts()
591 assert!(!queue.is_woken()); in reset_earlier_after_slot_starts()
593 // At this point the queue hasn't been polled, so `elapsed` on the wheel in reset_earlier_after_slot_starts()
594 // for the queue is still at 0 and hence the 1ms resolution slots cover in reset_earlier_after_slot_starts()
596 // the [64-128) slot. As the queue knows that the first entry is within in reset_earlier_after_slot_starts()
599 queue.reset_at(&foo, now + ms(120)); in reset_earlier_after_slot_starts()
600 assert!(queue.is_woken()); in reset_earlier_after_slot_starts()
602 assert_pending!(poll!(queue)); in reset_earlier_after_slot_starts()
605 assert!(!queue.is_woken()); in reset_earlier_after_slot_starts()
608 assert!(queue.is_woken()); in reset_earlier_after_slot_starts()
610 let entry = assert_ready_some!(poll!(queue)).into_inner(); in reset_earlier_after_slot_starts()
618 let mut queue = task::spawn(DelayQueue::new()); in insert_in_past_after_poll_fires_immediately() localVariable
622 queue.insert_at("foo", now + ms(200)); in insert_in_past_after_poll_fires_immediately()
624 assert_pending!(poll!(queue)); in insert_in_past_after_poll_fires_immediately()
628 assert!(!queue.is_woken()); in insert_in_past_after_poll_fires_immediately()
629 queue.insert_at("bar", now + ms(40)); in insert_in_past_after_poll_fires_immediately()
631 assert!(queue.is_woken()); in insert_in_past_after_poll_fires_immediately()
633 let entry = assert_ready_some!(poll!(queue)).into_inner(); in insert_in_past_after_poll_fires_immediately()
649 let mut queue = task::spawn(DelayQueue::new()); in compact_expire_empty() localVariable
653 queue.insert_at("foo1", now + ms(10)); in compact_expire_empty()
654 queue.insert_at("foo2", now + ms(10)); in compact_expire_empty()
660 let entry = assert_ready_some!(poll!(queue)); in compact_expire_empty()
664 queue.compact(); in compact_expire_empty()
666 assert_eq!(queue.len(), 0); in compact_expire_empty()
667 assert_eq!(queue.capacity(), 0); in compact_expire_empty()
672 let mut queue = task::spawn(DelayQueue::new()); in compact_remove_empty() localVariable
676 let key1 = queue.insert_at("foo1", now + ms(10)); in compact_remove_empty()
677 let key2 = queue.insert_at("foo2", now + ms(10)); in compact_remove_empty()
679 queue.remove(&key1); in compact_remove_empty()
680 queue.remove(&key2); in compact_remove_empty()
682 queue.compact(); in compact_remove_empty()
684 assert_eq!(queue.len(), 0); in compact_remove_empty()
685 assert_eq!(queue.capacity(), 0); in compact_remove_empty()
692 let mut queue = task::spawn(DelayQueue::new()); in compact_remove_remapped_keys() localVariable
696 queue.insert_at("foo1", now + ms(10)); in compact_remove_remapped_keys()
697 queue.insert_at("foo2", now + ms(10)); in compact_remove_remapped_keys()
700 let key3 = queue.insert_at("foo3", now + ms(20)); in compact_remove_remapped_keys()
701 let key4 = queue.insert_at("foo4", now + ms(20)); in compact_remove_remapped_keys()
707 let entry = assert_ready_some!(poll!(queue)); in compact_remove_remapped_keys()
713 queue.compact(); in compact_remove_remapped_keys()
715 queue.insert_at("foo5", now + ms(10)); in compact_remove_remapped_keys()
718 let expired3 = queue.remove(&key3); in compact_remove_remapped_keys()
719 let expired4 = queue.remove(&key4); in compact_remove_remapped_keys()
724 queue.compact(); in compact_remove_remapped_keys()
725 assert_eq!(queue.len(), 1); in compact_remove_remapped_keys()
726 assert_eq!(queue.capacity(), 1); in compact_remove_remapped_keys()
731 let mut queue = task::spawn(DelayQueue::new()); in compact_change_deadline() localVariable
735 queue.insert_at("foo1", now + ms(10)); in compact_change_deadline()
736 queue.insert_at("foo2", now + ms(10)); in compact_change_deadline()
739 queue.insert_at("foo3", now + ms(20)); in compact_change_deadline()
740 let key4 = queue.insert_at("foo4", now + ms(20)); in compact_change_deadline()
746 let entry = assert_ready_some!(poll!(queue)); in compact_change_deadline()
752 queue.compact(); in compact_change_deadline()
756 queue.insert_at("foo5", now + ms(10)); in compact_change_deadline()
757 let key6 = queue.insert_at("foo6", now + ms(10)); in compact_change_deadline()
759 queue.reset_at(&key4, now + ms(20)); in compact_change_deadline()
760 queue.reset_at(&key6, now + ms(20)); in compact_change_deadline()
766 let entry = assert_ready_some!(poll!(queue)); in compact_change_deadline()
773 let entry = assert_ready_some!(poll!(queue)); in compact_change_deadline()
777 let entry = assert_ready!(poll!(queue)); in compact_change_deadline()
785 let mut queue = DelayQueue::new(); in remove_after_compact() localVariable
787 let foo_key = queue.insert_at("foo", now + ms(10)); in remove_after_compact()
788 queue.insert_at("bar", now + ms(20)); in remove_after_compact()
789 queue.remove(&foo_key); in remove_after_compact()
790 queue.compact(); in remove_after_compact()
793 queue.remove(&foo_key); in remove_after_compact()
802 let mut queue = task::spawn(DelayQueue::new()); in remove_after_compact_poll() localVariable
804 let foo_key = queue.insert_at("foo", now + ms(10)); in remove_after_compact_poll()
805 queue.insert_at("bar", now + ms(20)); in remove_after_compact_poll()
808 assert_eq!(assert_ready_some!(poll!(queue)).key(), foo_key); in remove_after_compact_poll()
810 queue.compact(); in remove_after_compact_poll()
813 queue.remove(&foo_key); in remove_after_compact_poll()