From 45a48a147147d98a62c5db8e78f036ee00494d95 Mon Sep 17 00:00:00 2001 From: azw Date: Thu, 9 May 2024 22:02:31 +0800 Subject: [PATCH] 1 --- server/stat/src/app/user_app.rs | 6 +++++- server/stat/src/listener/wslistener.rs | 2 +- third_party/librust | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/server/stat/src/app/user_app.rs b/server/stat/src/app/user_app.rs index a2e6a19..69d7fc3 100644 --- a/server/stat/src/app/user_app.rs +++ b/server/stat/src/app/user_app.rs @@ -9,9 +9,11 @@ use f9::app::HttpContext; use crate::listener::WsListener; use crate::upstream::UpStreamMgr; use bytes::BytesMut; +use r9::xtimer::TimerList; //use crate::ss; pub struct DownStreamPack { + holder: Option>>, socket_handle: u16, data: bytes::BytesMut, entry: Rc::>>, @@ -74,12 +76,14 @@ impl f9::app::UserApp for UserApp { impl UserApp { - pub fn add_down_stream_pack(&mut self, socket_handle: u16, data: bytes::BytesMut) { + pub fn add_down_stream_pack(&self, socket_handle: u16, data: bytes::BytesMut) { let node = Rc::new(RefCell::new(DownStreamPack{ + holder: Default::default(), socket_handle: socket_handle, data: data, entry: r9::ListHead::< crate::app::user_app::DownStreamPack>::new_node(Default::default()), })); + node.borrow_mut().holder = Some(node.clone()); node.borrow_mut().entry = r9::ListHead::< crate::app::user_app::DownStreamPack>::new_node(Rc::downgrade(&node)); self.net_msg_queue.borrow_mut().push(&node.borrow_mut().entry); } diff --git a/server/stat/src/listener/wslistener.rs b/server/stat/src/listener/wslistener.rs index 11512d1..dac245e 100644 --- a/server/stat/src/listener/wslistener.rs +++ b/server/stat/src/listener/wslistener.rs @@ -97,7 +97,7 @@ impl WsConn { println!("recv buf_len:{0}", tmp_bytes.len()); } { - UserApp::instance().borrow_mut().add_down_stream_pack(self.socket_handle, tmp_bytes); + UserApp::instance().borrow().add_down_stream_pack(self.socket_handle, tmp_bytes); } offset += (pack_len as usize) + 12; } diff --git a/third_party/librust b/third_party/librust index 3a2b95d..cbca2a6 160000 --- a/third_party/librust +++ b/third_party/librust @@ -1 +1 @@ -Subproject commit 3a2b95dfc948ab2ac28b634e38b12753ca265874 +Subproject commit cbca2a666f64fe55357179c1ddd13e1ed5a43c9c