This commit is contained in:
aozhiwei 2024-09-27 10:49:06 +08:00
parent 5e891d67a7
commit e4cc44cf80
3 changed files with 13 additions and 2 deletions

View File

@ -342,4 +342,13 @@ namespace a8
abort(); abort();
} }
void TestSleep(int count, int interval, const std::string text)
{
int i = 0;
while (i++ < count) {
sleep(interval);
}
XPrintf("TestSleep %s\n", {text});
}
} }

View File

@ -97,4 +97,5 @@ namespace a8
void ClearSendQueue(a8::SendQueueNode* node); void ClearSendQueue(a8::SendQueueNode* node);
void Abort(); void Abort();
void TestSleep(int count, int interval, const std::string text);
} }

View File

@ -51,7 +51,7 @@ namespace a8
ClearTimeOutSocket(); ClearTimeOutSocket();
a8::TcpSession* p = nullptr; a8::TcpSession* p = nullptr;
if (top_node_) { if (top_node_) {
if (time(nullptr) - top_node_->addtime >= 30) { if (time(nullptr) - top_node_->addtime >= 20) {
p = top_node_->session; p = top_node_->session;
a8::TcpSessionPool::TcpSessionNode* pdelnode = top_node_; a8::TcpSessionPool::TcpSessionNode* pdelnode = top_node_;
top_node_ = top_node_->next; top_node_ = top_node_->next;
@ -68,12 +68,13 @@ namespace a8
void TcpSessionPool::ClearTimeOutSocket() void TcpSessionPool::ClearTimeOutSocket()
{ {
while (top_node_) { while (top_node_) {
if(time(nullptr) - top_node_->addtime > 60 * 5){ if(time(nullptr) - top_node_->addtime > 30){
a8::TcpSessionPool::TcpSessionNode* pdelnode = top_node_; a8::TcpSessionPool::TcpSessionNode* pdelnode = top_node_;
top_node_ = top_node_->next; top_node_ = top_node_->next;
if (!top_node_) { if (!top_node_) {
bot_node_ = NULL; bot_node_ = NULL;
} }
pdelnode->session->Destory();
delete pdelnode->session; delete pdelnode->session;
delete pdelnode; delete pdelnode;
count_--; count_--;