This commit is contained in:
azw 2024-05-12 18:20:12 +08:00
parent 8668cf7686
commit 73618b38d8

View File

@ -34,7 +34,7 @@ pub struct WsListener {
work_thread: Option<JoinHandle<()>>,
socket_hash: std::sync::Mutex<HashMap<u16, Recipient<DownStreamMessage>>>,
cur_socket_handle: AtomicU16,
pub upstream: std::sync::Weak<Mutex<TcpStream>>,
pub upstream: std::sync::Mutex<Option<std::sync::Arc<Mutex<TcpStream>>>>,
tokio_rt: Runtime,
down_pack_queue: Arc<std::sync::Mutex<r9::QueueLock<DownStreamPack>>>,
up_pack_queue: Arc<std::sync::Mutex<r9::QueueLock<DownStreamPack>>>,
@ -339,7 +339,6 @@ impl WsListener {
});
}));
{
let upstream = self.upstream.clone();
let down_pack_queue = self.down_pack_queue.clone();
let up_pack_queue = self.up_pack_queue.clone();
self.tokio_rt.spawn(async move {
@ -347,7 +346,7 @@ impl WsListener {
match result {
Ok(v) => {
let a = Arc::new(Mutex::new(v));
//WsListener::instance().upstream = Arc::downgrade(&a);
WsListener::instance().upstream.lock().unwrap().replace(a.clone());
println!("connect ok");
upstream_enter(a, down_pack_queue, up_pack_queue).await;
},