about summary refs log tree commit diff
path: root/library/std/src/sync/mpmc/list.rs
diff options
context:
space:
mode:
Diffstat (limited to 'library/std/src/sync/mpmc/list.rs')
-rw-r--r--library/std/src/sync/mpmc/list.rs16
1 files changed, 3 insertions, 13 deletions
diff --git a/library/std/src/sync/mpmc/list.rs b/library/std/src/sync/mpmc/list.rs
index 5bc196995b1..4761125e483 100644
--- a/library/std/src/sync/mpmc/list.rs
+++ b/library/std/src/sync/mpmc/list.rs
@@ -418,19 +418,9 @@ impl<T> Channel<T> {
     pub(crate) fn recv(&self, deadline: Option<Instant>) -> Result<T, RecvTimeoutError> {
         let token = &mut Token::default();
         loop {
-            // Try receiving a message several times.
-            let backoff = Backoff::new();
-            loop {
-                if self.start_recv(token) {
-                    unsafe {
-                        return self.read(token).map_err(|_| RecvTimeoutError::Disconnected);
-                    }
-                }
-
-                if backoff.is_completed() {
-                    break;
-                } else {
-                    backoff.snooze();
+            if self.start_recv(token) {
+                unsafe {
+                    return self.read(token).map_err(|_| RecvTimeoutError::Disconnected);
                 }
             }