diff options
author | hozan23 <hozan23@karyontech.net> | 2024-06-29 21:16:46 +0200 |
---|---|---|
committer | hozan23 <hozan23@karyontech.net> | 2024-06-29 21:16:46 +0200 |
commit | 5c0abab1b7bf0f2858c451d6f0efc7ca0e138fc6 (patch) | |
tree | 9d64a261ddd289560365b71f5d02d31df6c4a0ec /p2p/src/peer_pool.rs | |
parent | bcc6721257889f85f57af1b40351540585ffd41d (diff) |
use shadown variables to name clones and place them between {} when spawning new tasks
Diffstat (limited to 'p2p/src/peer_pool.rs')
-rw-r--r-- | p2p/src/peer_pool.rs | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/p2p/src/peer_pool.rs b/p2p/src/peer_pool.rs index 02a74ac..1f3ca55 100644 --- a/p2p/src/peer_pool.rs +++ b/p2p/src/peer_pool.rs @@ -78,11 +78,16 @@ impl PeerPool { }) } - /// Start + /// Starts the [`PeerPool`] pub async fn start(self: &Arc<Self>) -> Result<()> { self.setup_protocols().await?; - let selfc = self.clone(); - self.task_group.spawn(selfc.listen_loop(), |_| async {}); + self.task_group.spawn( + { + let this = self.clone(); + async move { this.listen_loop().await } + }, + |_| async {}, + ); Ok(()) } @@ -145,14 +150,16 @@ impl PeerPool { // Insert the new peer self.peers.write().await.insert(pid.clone(), peer.clone()); - let selfc = self.clone(); - let pid_c = pid.clone(); - let on_disconnect = |result| async move { - if let TaskResult::Completed(result) = result { - if let Err(err) = selfc.remove_peer(&pid_c).await { - error!("Failed to remove peer {pid_c}: {err}"); + let on_disconnect = { + let this = self.clone(); + let pid = pid.clone(); + |result| async move { + if let TaskResult::Completed(result) = result { + if let Err(err) = this.remove_peer(&pid).await { + error!("Failed to remove peer {pid}: {err}"); + } + let _ = disconnect_signal.send(result).await; } - let _ = disconnect_signal.send(result).await; } }; |