From ee3ee273b2c60d06917f33a5c0b035881b970d71 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 5 Mar 2026 14:01:40 +0800 Subject: [PATCH] refactor: merge set_pool and start_reconnect_task into set_pool_and_start_reconnect_task --- src/connection.rs | 7 +++++++ src/main.rs | 5 ++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/connection.rs b/src/connection.rs index b1e4210..0ccf42e 100644 --- a/src/connection.rs +++ b/src/connection.rs @@ -180,6 +180,13 @@ impl ConnectionManager { self.pool = Some(pool); } + pub fn set_pool_and_start_reconnect_task(&mut self, pool: Arc) { + self.pool = Some(pool.clone()); + // 将 self 转换为不可变引用以调用 start_reconnect_task + let manager = self.clone(); + manager.start_reconnect_task(); + } + pub fn set_reconnect_tx(&mut self, tx: tokio::sync::mpsc::UnboundedSender) { self.reconnect_tx = Some(tx); } diff --git a/src/main.rs b/src/main.rs index 4665288..66d306d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -46,12 +46,11 @@ async fn main() { Some(ws_manager.clone()), )); connection_manager.set_event_manager(event_manager.clone()); - connection_manager.set_pool(Arc::new(pool.clone())); + connection_manager.set_pool_and_start_reconnect_task(Arc::new(pool.clone())); let connection_manager = Arc::new(connection_manager); - // 启动重连任务 - connection_manager.start_reconnect_task(); + // Connect to all enabled sources concurrently let sources = service::get_all_enabled_sources(&pool)