We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
is_join_waker_set
unset_waker
1 parent 15f7366 commit bd3e857Copy full SHA for bd3e857
tokio/src/runtime/task/state.rs
@@ -446,12 +446,15 @@ impl State {
446
pub(super) fn unset_waker(&self) -> UpdateResult {
447
self.fetch_update(|curr| {
448
assert!(curr.is_join_interested());
449
- assert!(curr.is_join_waker_set());
450
451
if curr.is_complete() {
452
return None;
453
}
454
+ // If the task is completed, this bit may have been unset by
455
+ // `unset_waker_after_complete`.
456
+ assert!(curr.is_join_waker_set());
457
+
458
let mut next = curr;
459
next.unset_join_waker();
460
0 commit comments