|
|
@@ -1,7 +1,7 @@
|
|
|
use std::collections::BTreeMap;
|
|
|
use std::sync::Arc;
|
|
|
use std::sync::atomic::AtomicBool;
|
|
|
-use std::time::Duration;
|
|
|
+use futures_util::StreamExt;
|
|
|
use rust_decimal::Decimal;
|
|
|
use tokio::sync::Mutex;
|
|
|
use exchanges::response_base::ResponseData;
|
|
|
@@ -41,16 +41,13 @@ pub(crate) async fn reference_binance_swap_run(bool_v1 :Arc<AtomicBool>,
|
|
|
let mut min_sell = Decimal::ZERO;
|
|
|
|
|
|
loop {
|
|
|
- while let Ok(Some(data)) = read_rx.try_next() {
|
|
|
- on_data(bot_arc_clone.clone(), &mut update_flag_u, &mut max_buy, &mut min_sell, data).await;
|
|
|
-
|
|
|
- // 从通道中接收并丢弃所有的消息,直到通道为空
|
|
|
- while let Ok(Some(_)) = read_rx.try_next() {
|
|
|
- // 消息被忽略
|
|
|
- }
|
|
|
+ while let Some(data) = read_rx.next().await {
|
|
|
+ on_data(bot_arc_clone.clone(),
|
|
|
+ &mut update_flag_u,
|
|
|
+ &mut max_buy,
|
|
|
+ &mut min_sell,
|
|
|
+ data).await;
|
|
|
}
|
|
|
-
|
|
|
- tokio::time::sleep(Duration::from_nanos(1)).await;
|
|
|
}
|
|
|
});
|
|
|
|