This commit is contained in:
yuanyuanxiang
2025-10-26 18:57:45 +08:00
parent 8ed23cc8dc
commit 2855af1932
5 changed files with 27 additions and 3 deletions

View File

@@ -593,6 +593,7 @@ BOOL IOCPServer::OnClientPreSending(CONTEXT_OBJECT* ContextObject, PBYTE szBuffe
BOOL IOCPServer::OnClientPostSending(CONTEXT_OBJECT* ContextObject,ULONG ulCompletedLength)
{
CAutoCLock L(ContextObject->SendLock);
try {
DWORD ulFlags = MSG_PARTIAL;
@@ -609,10 +610,12 @@ BOOL IOCPServer::OnClientPostSending(CONTEXT_OBJECT* ContextObject,ULONG ulCompl
NULL, ulFlags,&OverlappedPlus->m_ol, NULL);
if ( iOk == SOCKET_ERROR && WSAGetLastError() != WSA_IO_PENDING ) {
int a = GetLastError();
Mprintf("!!! OnClientPostSending Ͷ<><CDB6><EFBFBD><EFBFBD>Ϣʧ<CFA2><CAA7>\n");
Mprintf("!!! OnClientPostSending Ͷ<><CDB6><EFBFBD><EFBFBD>Ϣʧ<CFA2><CAA7>: %d\n", a);
RemoveStaleContext(ContextObject);
SAFE_DELETE(OverlappedPlus);
return FALSE;
}
return TRUE;
}
} catch(...) {
Mprintf("[ERROR] OnClientPostSending catch an error \n");

View File

@@ -374,6 +374,7 @@ public:
Server* server; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ikcpcb* kcp = nullptr; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>KCP<43>
std::string GroupName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CLock SendLock; // fix #214
std::string GetProtocol() const override
{
@@ -411,8 +412,10 @@ public:
}
BOOL Send2Client(PBYTE szBuffer, ULONG ulOriginalLength) override
{
if (server)
if (server) {
CAutoCLock L(SendLock);
return server->Send2Client(this, szBuffer, ulOriginalLength);
}
return FALSE;
}
VOID SetClientInfo(const CString(&s)[ONLINELIST_MAX], const std::vector<std::string>& a = {})