|
|
@@ -178,45 +178,5 @@ pub async fn run_extended_subscriptions(running: Arc<AtomicBool>, config: &Confi
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- // // 网络延迟统计
|
|
|
- // let running_clone = Arc::clone(&running);
|
|
|
- // spawn(async move {
|
|
|
- // let mut interval = tokio::time::interval(Duration::from_secs(10));
|
|
|
- //
|
|
|
- // while running_clone.load(Ordering::SeqCst) {
|
|
|
- // interval.tick().await; // 等待下一个周期
|
|
|
- //
|
|
|
- // if !running_clone.load(Ordering::SeqCst) {
|
|
|
- // break;
|
|
|
- // }
|
|
|
- //
|
|
|
- // let mut total_delay_sum = 0i64;
|
|
|
- // let mut total_message_count = 0u64;
|
|
|
- //
|
|
|
- // // --- 第一步:收集 DataManager 的统计数据 ---
|
|
|
- // // 直接调用 DataManager 的方法
|
|
|
- // let manager_lock = data_manager_am.lock().await; // 锁定单个 DataManager
|
|
|
- // let (current_sum, current_count) = manager_lock.get_delay_stats(); // 使用原子读
|
|
|
- //
|
|
|
- // // 使用 saturating_add 防止聚合时溢出 (虽然 u64 很大,但好习惯)
|
|
|
- // total_delay_sum = total_delay_sum.saturating_add(current_sum);
|
|
|
- // total_message_count = total_message_count.saturating_add(current_count);
|
|
|
- //
|
|
|
- // manager_lock.reset_delay_stats(); // 调用重置方法 (使用原子写)
|
|
|
- //
|
|
|
- // // --- 第二步:计算并报告平均延迟 ---
|
|
|
- // if total_message_count > 0 {
|
|
|
- // let average_delay = total_delay_sum as f64 / total_message_count as f64;
|
|
|
- // info!(
|
|
|
- // "当前 WS 平均延迟: {:.2} 毫秒 (基于 {} 条消息测量)",
|
|
|
- // average_delay, total_message_count
|
|
|
- // );
|
|
|
- // } else {
|
|
|
- // info!("WS 延迟报告:本周期内未收到用于计算延迟的消息。");
|
|
|
- // }
|
|
|
- // }
|
|
|
- // info!("延迟报告任务已停止。");
|
|
|
- // });
|
|
|
-
|
|
|
Ok(())
|
|
|
}
|