refactor: merge set_pool and start_reconnect_task into set_pool_and_start_reconnect_task

This commit is contained in:
caoqianming 2026-03-05 14:01:40 +08:00
parent 0f37c9435e
commit ee3ee273b2
2 changed files with 9 additions and 3 deletions

View File

@ -180,6 +180,13 @@ impl ConnectionManager {
self.pool = Some(pool);
}
pub fn set_pool_and_start_reconnect_task(&mut self, pool: Arc<sqlx::PgPool>) {
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<Uuid>) {
self.reconnect_tx = Some(tx);
}

View File

@ -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)