From b1b9b8c3b9f3bfb2a1d9293ead7197a92d234285 Mon Sep 17 00:00:00 2001 From: azw Date: Mon, 13 Nov 2023 06:44:57 +0000 Subject: [PATCH] 1 --- server/wsproxy/app.cc | 100 ------------------------------------------ server/wsproxy/app.h | 7 --- 2 files changed, 107 deletions(-) diff --git a/server/wsproxy/app.cc b/server/wsproxy/app.cc index 9fa99a8..8c82bfb 100644 --- a/server/wsproxy/app.cc +++ b/server/wsproxy/app.cc @@ -89,7 +89,6 @@ const std::string App::GetPkgName() void App::Init() { - msg_mutex_ = new std::mutex(); udp_msg_mutex_ = new std::mutex(); HandlerMgr::Instance()->Init(); @@ -147,10 +146,7 @@ void App::UnInit() JsonDataMgr::Instance()->UnInit(); HandlerMgr::Instance()->UnInit(); - FreeSocketMsgQueue(); FreeUdpMsgQueue(); - delete msg_mutex_; - msg_mutex_ = nullptr; delete udp_msg_mutex_; udp_msg_mutex_ = nullptr; a8::XPrintf("wsproxy terminated instance_id:%d pid:%d\n", @@ -168,7 +164,6 @@ void App::QuickExecute() { f8::Timer::Instance()->Update(); f8::MsgQueue::Instance()->Update(); - DispatchMsg(); DispatchUdpMsg(); LongSessionMgr::Instance()->Update(); } @@ -179,20 +174,6 @@ void App::SlowerExecute() bool App::HasTask() { - { - if (!work_node_) { - msg_mutex_->lock(); - if (!work_node_ && top_node_) { - work_node_ = top_node_; - top_node_ = nullptr; - bot_node_ = nullptr; - } - msg_mutex_->unlock(); - } - if (work_node_) { - return true; - } - } { if (!udp_work_node_) { udp_msg_mutex_->lock(); @@ -210,63 +191,6 @@ bool App::HasTask() return false; } -void App::DispatchMsg() -{ - #if 0 - long long starttick = a8::XGetTickCount(); - if (!work_node_ && top_node_) { - msg_mutex_->lock(); - work_node_ = top_node_; - top_node_ = nullptr; - bot_node_ = nullptr; - working_msgnode_size_ = msgnode_size_; - msg_mutex_->unlock(); - } - - f8::MsgHdr hdr; - while (work_node_) { - MsgNode *pdelnode = work_node_; - work_node_ = pdelnode->next; - hdr.msgid = pdelnode->msgid; - hdr.seqid = pdelnode->seqid; - hdr.socket_handle = pdelnode->sockhandle; - hdr.buf = pdelnode->buf; - hdr.buflen = pdelnode->buflen; - hdr.offset = 0; - hdr.ip_saddr = pdelnode->ip_saddr; - switch (pdelnode->sockfrom) { - case SF_Client: - { - ProcessClientMsg(hdr, pdelnode->tag); - } - break; - case SF_TargetServer: - { - ProcessTargetServerMsg(hdr, pdelnode->tag); - } - break; - case SF_MasterServer: - { - ProcessMasterServerMsg(hdr, pdelnode->tag); - } - break; - } - if (pdelnode->buf) { - free(pdelnode->buf); - } - free(pdelnode); - working_msgnode_size_--; - if (a8::XGetTickCount() - starttick > 200) { - break; - } - }//end while - - if (!work_node_) { - working_msgnode_size_ = 0; - } - #endif -} - void App::ProcessClientMsg(f8::MsgHdr* hdr, int tag) { if (hdr->msgid == ss::_SS_CMLogin || @@ -360,30 +284,6 @@ void App::ProcessTargetServerMsg(f8::MsgHdr* hdr, int tag) } } -void App::FreeSocketMsgQueue() -{ - msg_mutex_->lock(); - if (!work_node_) { - work_node_ = top_node_; - top_node_ = nullptr; - bot_node_ = nullptr; - } - while (work_node_) { - MsgNode* pdelnode = work_node_; - work_node_ = work_node_->next; - if (pdelnode->buf) { - free(pdelnode->buf); - } - free(pdelnode); - if (!work_node_) { - work_node_ = top_node_; - top_node_ = nullptr; - bot_node_ = nullptr; - } - } - msg_mutex_->unlock(); -} - void App::FreeUdpMsgQueue() { udp_msg_mutex_->lock(); diff --git a/server/wsproxy/app.h b/server/wsproxy/app.h index 1db1d61..7b9d23f 100644 --- a/server/wsproxy/app.h +++ b/server/wsproxy/app.h @@ -38,24 +38,17 @@ private: void QuickExecute(); void SlowerExecute(); - void DispatchMsg(); void DispatchUdpMsg(); void ProcessClientMsg(f8::MsgHdr* hdr, int tag); void ProcessMasterServerMsg(f8::MsgHdr* hdr, int tag); void ProcessTargetServerMsg(f8::MsgHdr* hdr, int tag); - void FreeSocketMsgQueue(); void FreeUdpMsgQueue(); private: PerfMonitor perf_; - std::mutex* msg_mutex_ = nullptr; - MsgNode* top_node_ = nullptr; - MsgNode* bot_node_ = nullptr; - MsgNode* work_node_ = nullptr; - std::mutex* udp_msg_mutex_ = nullptr; UdpMsgNode* udp_top_node_ = nullptr; UdpMsgNode* udp_bot_node_ = nullptr;