优化内存泄露问题

This commit is contained in:
azw 2023-04-27 08:59:26 +00:00
parent 10db780deb
commit 6889784621
5 changed files with 24 additions and 4 deletions

View File

@ -570,8 +570,14 @@ void App::FreeUdpMsgQueue()
}
while (udp_work_node_) {
UdpMsgNode* pdelnode = udp_work_node_;
delete pdelnode->pkt;
udp_work_node_ = udp_work_node_->next;
{
if (pdelnode->pkt->buf) {
free((void*)pdelnode->pkt->buf);
}
delete pdelnode->pkt;
free(pdelnode);
}
if (!udp_work_node_) {
udp_work_node_ = udp_top_node_;
udp_top_node_ = nullptr;
@ -615,6 +621,13 @@ void App::DispatchUdpMsg()
UdpMsgNode *pdelnode = udp_work_node_;
LongSessionMgr::Instance()->ProcUdpPacket(pdelnode->pkt);
udp_work_node_ = pdelnode->next;
{
if (pdelnode->pkt->buf) {
free((void*)pdelnode->pkt->buf);
}
delete pdelnode->pkt;
free(pdelnode);
}
udp_working_msgnode_size_--;
if (a8::XGetTickCount() - starttick > 200) {
break;

View File

@ -39,7 +39,10 @@ void LongSessionMgr::Init()
void LongSessionMgr::UnInit()
{
for (auto& pair : socket_handle_hash_) {
pair.second->UnInit();
}
socket_handle_hash_.clear();
}
void LongSessionMgr::Update()

View File

@ -48,6 +48,10 @@ void MasterMgr::Init()
void MasterMgr::UnInit()
{
for (auto& pair : mastersvr_hash_) {
pair.second->UnInit();
}
mastersvr_hash_.clear();
}
void MasterMgr::_SS_MS_ResponseTargetServer(f8::MsgHdr& hdr, const ss::SS_MS_ResponseTargetServer& msg)

2
third_party/a8 vendored

@ -1 +1 @@
Subproject commit 03f5f63a42a0a72881d224767791efca437d0611
Subproject commit 1e577389c8a2870db9ddbf18577bfca24def049b

2
third_party/f8 vendored

@ -1 +1 @@
Subproject commit c15cb12a75cdc0e190a76ffa94f88c0ec06eec41
Subproject commit 243bbe515ef4a01089f9a6cf608c93d4097018de