style: Change files encoding format to UTF8-BOM

This commit is contained in:
yuanyuanxiang
2026-01-02 20:00:18 +01:00
parent ba9be08411
commit b6af9ce615
356 changed files with 2819 additions and 2819 deletions

View File

@@ -1,4 +1,4 @@
#include "IOCPKCPClient.h"
#include "IOCPKCPClient.h"
#include <windows.h>
#include <chrono>
#include <iostream>
@@ -24,19 +24,19 @@ BOOL IOCPKCPClient::ConnectServer(const char* szServerIP, unsigned short uPort)
if (!ret)
return FALSE;
// <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>KCP
uint32_t conv = KCP_SESSION_ID; // conv Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD>
// 初始化KCP
uint32_t conv = KCP_SESSION_ID; // conv 要与服务端匹配
kcp_ = ikcp_create(conv, this);
if (!kcp_)
return FALSE;
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>KCP<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// 设置KCP参数
ikcp_nodelay(kcp_, 1, 40, 2, 0);
kcp_->rx_minrto = 30;
kcp_->snd_wnd = 128;
kcp_->rcv_wnd = 128;
// <EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><EFBFBD>ͻص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>KCP<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>
// 设置发送回调函数KCP发送数据时调用
kcp_->output = IOCPKCPClient::kcpOutput;
running_ = true;
@@ -46,23 +46,23 @@ BOOL IOCPKCPClient::ConnectServer(const char* szServerIP, unsigned short uPort)
return TRUE;
}
// UDP<EFBFBD>հ<EFBFBD><EFBFBD>̵߳<EFBFBD><EFBFBD>ã<EFBFBD><EFBFBD><EFBFBD><EFBFBD>յ<EFBFBD><EFBFBD><EFBFBD>UDP<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>KCP<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٳ<EFBFBD><EFBFBD>Զ<EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ð<EFBFBD>
// UDP收包线程调用将收到的UDP包送入KCP处理再尝试读取完整应用包
int IOCPKCPClient::ReceiveData(char* buffer, int bufSize, int flags)
{
// <EFBFBD>ȵ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>UDPԭʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// 先调用基类接收UDP原始数据
char udpBuffer[1500] = { 0 };
int recvLen = IOCPUDPClient::ReceiveData(udpBuffer, sizeof(udpBuffer), flags);
if (recvLen <= 0)
return recvLen;
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>KCPЭ<EFBFBD><EFBFBD>ջ
// 输入KCP协议栈
int inputRet = ikcp_input(kcp_, udpBuffer, recvLen);
if (inputRet < 0)
return -1;
// <EFBFBD><EFBFBD>KCP<EFBFBD>ж<EFBFBD>ȡӦ<EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>д<EFBFBD><EFBFBD>buffer
// KCP中读取应用层数据,写入buffer
int kcpRecvLen = ikcp_recv(kcp_, buffer, bufSize);
return kcpRecvLen; // >0<EFBFBD><EFBFBD>ʾ<EFBFBD>յ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
return kcpRecvLen; // >0表示收到完整应用数据0表示无完整包
}
bool IOCPKCPClient::ProcessRecvData(CBuffer* m_CompressedBuffer, char* szBuffer, int len, int flag)
@@ -72,13 +72,13 @@ bool IOCPKCPClient::ProcessRecvData(CBuffer* m_CompressedBuffer, char* szBuffer,
{}
else {
szBuffer[iReceivedLength] = 0;
//<EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD>վ͵<EFBFBD><EFBFBD><EFBFBD>OnRead<EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D7AA>OnRead
//正确接收就调用OnRead处理,转到OnRead
OnServerReceiving(m_CompressedBuffer, szBuffer, iReceivedLength);
}
return true;
}
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD>KCPЭ<EFBFBD><EFBFBD>ջ
// 发送应用层数据时调用转发给KCP协议栈
int IOCPKCPClient::SendTo(const char* buf, int len, int flags)
{
if (!kcp_)
@@ -88,12 +88,12 @@ int IOCPKCPClient::SendTo(const char* buf, int len, int flags)
if (ret < 0)
return -1;
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>flush<EFBFBD><EFBFBD><EFBFBD>ӿ췢<EFBFBD><EFBFBD>
// 主动调用flush加快发送
ikcp_flush(kcp_);
return ret;
}
// KCP<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>KCP<EFBFBD><EFBFBD><EFBFBD>ɵ<EFBFBD>UDP<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD>ȥ
// KCP发送数据回调将KCP生成的UDP包发送出去
int IOCPKCPClient::kcpOutput(const char* buf, int len, struct IKCPCB* kcp, void* user)
{
IOCPKCPClient* client = reinterpret_cast<IOCPKCPClient*>(user);
@@ -107,12 +107,12 @@ int IOCPKCPClient::kcpOutput(const char* buf, int len, struct IKCPCB* kcp, void*
return -1;
}
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̶߳<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ikcp_update<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>KCPЭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// 独立线程定时调用ikcp_update保持KCP协议正常工作
void IOCPKCPClient::KCPUpdateLoop()
{
while (running_ && !g_bExit) {
IUINT32 current = GetTickCount64();
ikcp_update(kcp_, current);
std::this_thread::sleep_for(std::chrono::milliseconds(20)); // 20ms<EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
std::this_thread::sleep_for(std::chrono::milliseconds(20)); // 20ms周期,视需求调整
}
}