|
|
@@ -10,7 +10,7 @@ use futures_util::stream::{SplitSink, SplitStream};
|
|
|
use ring::hmac;
|
|
|
use serde_json::json;
|
|
|
use tokio::net::TcpStream;
|
|
|
-use tokio::{spawn, time};
|
|
|
+use tokio::{spawn};
|
|
|
use tokio::sync::Mutex;
|
|
|
use tokio_tungstenite::{connect_async, MaybeTlsStream, WebSocketStream};
|
|
|
use tokio_tungstenite::tungstenite::{Error, Message};
|
|
|
@@ -189,26 +189,26 @@ impl AbstractWsMode {
|
|
|
Ok::<(), Error>(())
|
|
|
};
|
|
|
|
|
|
- // 防止 cpu 休眠。
|
|
|
- let read2 = read_arc.clone();
|
|
|
- spawn(async move {
|
|
|
- let t_str = "t".to_string();
|
|
|
- let response = ResponseData::new(t_str.clone(),
|
|
|
- t_str.clone(),
|
|
|
- t_str.clone(),
|
|
|
- t_str.clone());
|
|
|
- loop {
|
|
|
- time::sleep(Duration::from_nanos(1)).await;
|
|
|
-
|
|
|
- let t = response.clone();
|
|
|
- let r = read2.clone();
|
|
|
- spawn(async move {
|
|
|
- let read = r.lock().await;
|
|
|
-
|
|
|
- read.unbounded_send(t.clone()).unwrap();
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
+ // // 防止 cpu 休眠。
|
|
|
+ // let read2 = read_arc.clone();
|
|
|
+ // spawn(async move {
|
|
|
+ // let t_str = "t".to_string();
|
|
|
+ // let response = ResponseData::new(t_str.clone(),
|
|
|
+ // t_str.clone(),
|
|
|
+ // t_str.clone(),
|
|
|
+ // t_str.clone());
|
|
|
+ // loop {
|
|
|
+ // time::sleep(Duration::from_nanos(1)).await;
|
|
|
+ //
|
|
|
+ // let t = response.clone();
|
|
|
+ // let r = read2.clone();
|
|
|
+ // spawn(async move {
|
|
|
+ // let read = r.lock().await;
|
|
|
+ //
|
|
|
+ // read.unbounded_send(t.clone()).unwrap();
|
|
|
+ // });
|
|
|
+ // }
|
|
|
+ // });
|
|
|
|
|
|
//必须操作。,因为不同于其他的高级语言,有自动内存管理,所以为了防范地址改变,所以需要做此处理
|
|
|
pin_mut!(stdin_to_ws, ws_to_stdout,);
|