Skip to content

Commit cac7188

Browse files
committed
added:http and websocket send message use memory pool
1 parent 5c5a42b commit cac7188

File tree

5 files changed

+45
-33
lines changed

5 files changed

+45
-33
lines changed

XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,12 @@ extern XHANDLE xhTCPPool;
7979
extern XHANDLE xhHttpPool;
8080
extern XHANDLE xhWSPool;
8181
extern XHANDLE xhMQTTPool;
82+
extern XHANDLE xhMemPool;
8283

8384
extern XENGINE_SERVERCONFIG st_ServiceCfg;
8485
extern MESSAGEQUEUE_DBCONFIG st_DBConfig;
8586

87+
#include "MQService_MemoryPool.h"
8688
#include "MQService_Config.h"
8789
#include "MQService_Net.h"
8890
#include "MQService_TCPTask.h"

XEngine_Source/XEngine_MQServiceApp/MQService_Net.cpp

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -177,31 +177,26 @@ bool XEngine_MQXService_Send(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int
177177
}
178178
else if (XENGINE_MQAPP_NETTYPE_HTTP == nIPProto)
179179
{
180-
int nPKTLen = 8196;
181-
XCHAR tszPKTBuffer[8196];
182-
RFCCOMPONENTS_HTTP_HDRPARAM st_HTTPHdr;
183-
184-
memset(tszPKTBuffer, '\0', sizeof(tszPKTBuffer));
185-
memset(&st_HTTPHdr, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM));
180+
CMQService_MemoryPool m_MQMemoryPool(XENGINE_MEMORY_SIZE_MAX);
181+
int nSDLen = XENGINE_MEMORY_SIZE_MAX;
182+
RFCCOMPONENTS_HTTP_HDRPARAM st_HTTPHdr = {};
186183

187184
st_HTTPHdr.nHttpCode = 200;
188185
st_HTTPHdr.bIsClose = true;
189186
_tcsxcpy(st_HTTPHdr.tszMimeType, _X("json"));
190187

191-
HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszPKTBuffer, &nPKTLen, &st_HTTPHdr, lpszMsgBuffer, nMsgLen);
192-
if (!NetCore_TCPXCore_SendEx(xhHTTPSocket, lpszClientAddr, tszPKTBuffer, nPKTLen))
188+
HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MQMemoryPool.get(), &nSDLen, &st_HTTPHdr, lpszMsgBuffer, nMsgLen);
189+
if (!NetCore_TCPXCore_SendEx(xhHTTPSocket, lpszClientAddr, m_MQMemoryPool.get(), nSDLen))
193190
{
194191
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("发送数据给HTTP客户端:%s,失败,错误:%lX"), lpszClientAddr, NetCore_GetLastError());
195192
return false;
196193
}
197194
}
198195
else if (XENGINE_MQAPP_NETTYPE_WEBSOCKET == nIPProto)
199196
{
200-
XCHAR tszPKTBuffer[8196];
201-
memset(tszPKTBuffer, '\0', sizeof(tszPKTBuffer));
202-
203-
RfcComponents_WSCodec_EncodeMsg(lpszMsgBuffer, tszPKTBuffer, &nMsgLen, ENUM_XENGINE_RFCOMPONENTS_WEBSOCKET_OPCODE_TEXT);
204-
if (!NetCore_TCPXCore_SendEx(xhWSSocket, lpszClientAddr, tszPKTBuffer, nMsgLen))
197+
CMQService_MemoryPool m_MQMemoryPool(XENGINE_MEMORY_SIZE_MAX);
198+
RfcComponents_WSCodec_EncodeMsg(lpszMsgBuffer, m_MQMemoryPool.get(), &nMsgLen, ENUM_XENGINE_RFCOMPONENTS_WEBSOCKET_OPCODE_TEXT);
199+
if (!NetCore_TCPXCore_SendEx(xhWSSocket, lpszClientAddr, m_MQMemoryPool.get(), nMsgLen))
205200
{
206201
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("发送数据给Websocket客户端:%s,失败,错误:%lX"), lpszClientAddr, NetCore_GetLastError());
207202
return false;

XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp

Lines changed: 31 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ XHANDLE xhTCPPool = NULL;
1616
XHANDLE xhHttpPool = NULL;
1717
XHANDLE xhWSPool = NULL;
1818
XHANDLE xhMQTTPool = NULL;
19+
XHANDLE xhMemPool = NULL;
1920

2021
XENGINE_SERVERCONFIG st_ServiceCfg;
2122
MESSAGEQUEUE_DBCONFIG st_DBConfig;
@@ -41,6 +42,7 @@ void ServiceApp_Stop(int signo)
4142
ManagePool_Thread_NQDestroy(xhHttpPool);
4243
ManagePool_Thread_NQDestroy(xhWSPool);
4344
ManagePool_Thread_NQDestroy(xhMQTTPool);
45+
ManagePool_Memory_Destory(xhMemPool);
4446

4547
DBModule_MQData_Destory();
4648
DBModule_MQUser_Destory();
@@ -151,15 +153,15 @@ int main(int argc, char** argv)
151153
if (NULL == xhLog)
152154
{
153155
printf("启动服务器失败,启动日志失败,错误:%lX", XLog_GetLastError());
154-
goto NETSERVICEEXIT;
156+
goto XENGINE_APPEXIST;
155157
}
156158
HelpComponents_XLog_SetLogPriority(xhLog, st_ServiceCfg.st_XLog.nLogLeave);
157159
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化日志系统成功"));
158160

159161
if (!Config_Json_DBFile(lpszDBConfig, &st_DBConfig))
160162
{
161163
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化数据库配置失败,错误:%lX"), Config_GetLastError());
162-
goto NETSERVICEEXIT;
164+
goto XENGINE_APPEXIST;
163165
}
164166
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化数据库配置成功"));
165167

@@ -174,12 +176,20 @@ int main(int argc, char** argv)
174176
signal(SIGABRT, ServiceApp_Stop);
175177
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化服务器信号管理成功"));
176178

179+
xhMemPool = ManagePool_Memory_Create();
180+
if (NULL == xhMemPool)
181+
{
182+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化内存池失败,错误:%lX"), ManagePool_GetLastError());
183+
goto XENGINE_APPEXIST;
184+
}
185+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化内存池成功"));
186+
177187
if (st_ServiceCfg.st_XMemory.bDataQueryEnable || st_ServiceCfg.st_XMemory.bDataInsertEnable)
178188
{
179189
if (!MemoryCache_DBData_Init(st_ServiceCfg.st_XMemory.nTimeLast, st_ServiceCfg.st_XMemory.nTimeCount, MessageQueue_CBTask_MemoryCache))
180190
{
181191
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化消息内容高速缓存服务失败,错误:%lX"), MemoryCache_GetLastError());
182-
goto NETSERVICEEXIT;
192+
goto XENGINE_APPEXIST;
183193
}
184194
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化消息内容高速缓存服务成功,更新最大时间:%d,存储最大时间:%d"), st_ServiceCfg.st_XMemory.nTimeLast, st_ServiceCfg.st_XMemory.nTimeCount);
185195
}
@@ -192,7 +202,7 @@ int main(int argc, char** argv)
192202
if (!MemoryCache_DBUser_Init(st_ServiceCfg.st_XMemory.nTimeLast, st_ServiceCfg.st_XMemory.nTimeCount, MessageQueue_CBTask_MemoryCache))
193203
{
194204
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化用户信息高速缓存服务失败,错误:%lX"), MemoryCache_GetLastError());
195-
goto NETSERVICEEXIT;
205+
goto XENGINE_APPEXIST;
196206
}
197207
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化用户信息高速缓存服务成功,更新最大时间:%d,存储最大时间:%d"), st_ServiceCfg.st_XMemory.nTimeLast, st_ServiceCfg.st_XMemory.nTimeCount);
198208
}
@@ -206,20 +216,20 @@ int main(int argc, char** argv)
206216
if (!DBModule_MQData_Init((DATABASE_MYSQL_CONNECTINFO*)&st_ServiceCfg.st_XSql, st_ServiceCfg.st_XMemory.bDataQueryEnable, st_ServiceCfg.st_XMemory.bDataInsertEnable))
207217
{
208218
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化消息数据数据库失败,错误:%lX"), DBModule_GetLastError());
209-
goto NETSERVICEEXIT;
219+
goto XENGINE_APPEXIST;
210220
}
211221
if (!DBModule_MQUser_Init((DATABASE_MYSQL_CONNECTINFO*)&st_ServiceCfg.st_XSql, st_ServiceCfg.st_XMemory.bUserQueryEnable, MessageQueue_CBTask_TimePublish))
212222
{
213223
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化消息用户数据库失败,错误:%lX"), DBModule_GetLastError());
214-
goto NETSERVICEEXIT;
224+
goto XENGINE_APPEXIST;
215225
}
216226
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化数据库服务成功"));
217227
}
218228

219229
if (!SessionModule_Client_Init())
220230
{
221231
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("初始化客户端会话管理器失败,错误:%lX"), SessionModule_GetLastError());
222-
goto NETSERVICEEXIT;
232+
goto XENGINE_APPEXIST;
223233
}
224234
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化客户端会话管理器成功"));
225235
//TCP消息服务
@@ -230,15 +240,15 @@ int main(int argc, char** argv)
230240
if (NULL == xhTCPPacket)
231241
{
232242
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("初始化TCP组包器失败,错误:%lX"), Packets_GetLastError());
233-
goto NETSERVICEEXIT;
243+
goto XENGINE_APPEXIST;
234244
}
235245
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动TCP组包器成功"));
236246
//启动网络
237247
xhTCPSocket = NetCore_TCPXCore_StartEx(st_ServiceCfg.nTCPPort, st_ServiceCfg.st_XMax.nMaxClient, st_ServiceCfg.st_XMax.nIOThread);
238248
if (NULL == xhTCPSocket)
239249
{
240250
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动TCP网络服务器失败,错误:%lX"), NetCore_GetLastError());
241-
goto NETSERVICEEXIT;
251+
goto XENGINE_APPEXIST;
242252
}
243253
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动TCP网络服务器成功,TCP端口:%d,IO:%d"), st_ServiceCfg.nTCPPort, st_ServiceCfg.st_XMax.nIOThread);
244254
NetCore_TCPXCore_RegisterCallBackEx(xhTCPSocket, MessageQueue_Callback_TCPLogin, MessageQueue_Callback_TCPRecv, MessageQueue_Callback_TCPLeave);
@@ -257,7 +267,7 @@ int main(int argc, char** argv)
257267
if (NULL == xhTCPPool)
258268
{
259269
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动TCP线程池服务失败,错误:%lX"), ManagePool_GetLastError());
260-
goto NETSERVICEEXIT;
270+
goto XENGINE_APPEXIST;
261271
}
262272
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动TCP线程池服务成功,启动个数:%d"), st_ServiceCfg.st_XMax.nTCPThread);
263273
}
@@ -272,15 +282,15 @@ int main(int argc, char** argv)
272282
if (NULL == xhHTTPPacket)
273283
{
274284
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务器中,初始化HTTP组包失败,错误:%lX"), HttpProtocol_GetLastError());
275-
goto NETSERVICEEXIT;
285+
goto XENGINE_APPEXIST;
276286
}
277287
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化HTTP组包成功,IO线程个数:%d"), st_ServiceCfg.st_XMax.nHttpThread);
278288

279289
xhHTTPSocket = NetCore_TCPXCore_StartEx(st_ServiceCfg.nHttpPort, st_ServiceCfg.st_XMax.nMaxClient, st_ServiceCfg.st_XMax.nIOThread);
280290
if (NULL == xhHTTPSocket)
281291
{
282292
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动HTTP网络服务器失败,错误:%lX"), NetCore_GetLastError());
283-
goto NETSERVICEEXIT;
293+
goto XENGINE_APPEXIST;
284294
}
285295
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动HTTP网络服务器成功,HTTP端口:%d,IO:%d"), st_ServiceCfg.nHttpPort, st_ServiceCfg.st_XMax.nIOThread);
286296
NetCore_TCPXCore_RegisterCallBackEx(xhHTTPSocket, MessageQueue_Callback_HttpLogin, MessageQueue_Callback_HttpRecv, MessageQueue_Callback_HttpLeave);
@@ -299,7 +309,7 @@ int main(int argc, char** argv)
299309
if (NULL == xhHttpPool)
300310
{
301311
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动HTTP线程池服务失败,错误:%lX"), ManagePool_GetLastError());
302-
goto NETSERVICEEXIT;
312+
goto XENGINE_APPEXIST;
303313
}
304314
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动HTTP线程池服务成功,启动个数:%d"), st_ServiceCfg.st_XMax.nHttpThread);
305315
}
@@ -314,15 +324,15 @@ int main(int argc, char** argv)
314324
if (NULL == xhWSPacket)
315325
{
316326
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务器中,初始化Websocket组包失败,错误:%lX"), WSFrame_GetLastError());
317-
goto NETSERVICEEXIT;
327+
goto XENGINE_APPEXIST;
318328
}
319329
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化Websocket组包成功,IO线程个数:%d"), st_ServiceCfg.st_XMax.nWSThread);
320330

321331
xhWSSocket = NetCore_TCPXCore_StartEx(st_ServiceCfg.nWSPort, st_ServiceCfg.st_XMax.nMaxClient, st_ServiceCfg.st_XMax.nIOThread);
322332
if (NULL == xhWSSocket)
323333
{
324334
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动Websocket网络服务器失败,错误:%lX"), NetCore_GetLastError());
325-
goto NETSERVICEEXIT;
335+
goto XENGINE_APPEXIST;
326336
}
327337
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动Websocket网络服务器成功,Websocket端口:%d,IO:%d"), st_ServiceCfg.nWSPort, st_ServiceCfg.st_XMax.nIOThread);
328338
NetCore_TCPXCore_RegisterCallBackEx(xhWSSocket, MessageQueue_Callback_WSLogin, MessageQueue_Callback_WSRecv, MessageQueue_Callback_WSLeave);
@@ -341,7 +351,7 @@ int main(int argc, char** argv)
341351
if (NULL == xhWSPool)
342352
{
343353
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动Websocket线程池服务失败,错误:%lX"), ManagePool_GetLastError());
344-
goto NETSERVICEEXIT;
354+
goto XENGINE_APPEXIST;
345355
}
346356
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动Websocket线程池服务成功,启动个数:%d"), st_ServiceCfg.st_XMax.nWSThread);
347357
}
@@ -355,15 +365,15 @@ int main(int argc, char** argv)
355365
if (!MQTTProtocol_Parse_Init(st_ServiceCfg.st_XMax.nMQTTThread))
356366
{
357367
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务器中,初始化MQTT组包失败,错误:%lX"), MQTTProtocol_GetLastError());
358-
goto NETSERVICEEXIT;
368+
goto XENGINE_APPEXIST;
359369
}
360370
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化MQTT组包成功,IO线程个数:%d"), st_ServiceCfg.st_XMax.nMQTTThread);
361371

362372
xhMQTTSocket = NetCore_TCPXCore_StartEx(st_ServiceCfg.nMQTTPort, st_ServiceCfg.st_XMax.nMaxClient, st_ServiceCfg.st_XMax.nMQTTThread);
363373
if (NULL == xhMQTTSocket)
364374
{
365375
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动MQTT网络服务器失败,错误:%lX"), NetCore_GetLastError());
366-
goto NETSERVICEEXIT;
376+
goto XENGINE_APPEXIST;
367377
}
368378
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动MQTT网络服务器成功,MQTT端口:%d,IO:%d"), st_ServiceCfg.nMQTTPort, st_ServiceCfg.st_XMax.nMQTTThread);
369379
NetCore_TCPXCore_RegisterCallBackEx(xhMQTTSocket, MessageQueue_Callback_MQTTLogin, MessageQueue_Callback_MQTTRecv, MessageQueue_Callback_MQTTLeave);
@@ -382,7 +392,7 @@ int main(int argc, char** argv)
382392
if (NULL == xhWSPool)
383393
{
384394
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动MQTT线程池服务失败,错误:%lX"), ManagePool_GetLastError());
385-
goto NETSERVICEEXIT;
395+
goto XENGINE_APPEXIST;
386396
}
387397
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动MQTT线程池服务成功,启动个数:%d"), st_ServiceCfg.st_XMax.nMQTTThread);
388398
}
@@ -420,7 +430,7 @@ int main(int argc, char** argv)
420430
}
421431
std::this_thread::sleep_for(std::chrono::seconds(1));
422432
}
423-
NETSERVICEEXIT:
433+
XENGINE_APPEXIST:
424434

425435
bIsRun = false;
426436
if (bIsTest && 0 == nRet)
@@ -446,6 +456,7 @@ int main(int argc, char** argv)
446456
ManagePool_Thread_NQDestroy(xhHttpPool);
447457
ManagePool_Thread_NQDestroy(xhWSPool);
448458
ManagePool_Thread_NQDestroy(xhMQTTPool);
459+
ManagePool_Memory_Destory(xhMemPool);
449460

450461
DBModule_MQData_Destory();
451462
DBModule_MQUser_Destory();

XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.vcxproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,7 @@
251251
<ClInclude Include="MQService_HttpTask.h" />
252252
<ClInclude Include="MQService_HTTPTask\MQService_HTTPGet.h" />
253253
<ClInclude Include="MQService_HTTPTask\MQService_HTTPPost.h" />
254+
<ClInclude Include="MQService_MemoryPool.h" />
254255
<ClInclude Include="MQService_MQTTTask.h" />
255256
<ClInclude Include="MQService_Net.h" />
256257
<ClInclude Include="MQService_Task.h" />

XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.vcxproj.filters

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,5 +83,8 @@
8383
<ClInclude Include="MQService_HTTPTask\MQService_HTTPGet.h">
8484
<Filter>头文件\MQService_HTTPTask</Filter>
8585
</ClInclude>
86+
<ClInclude Include="MQService_MemoryPool.h">
87+
<Filter>头文件</Filter>
88+
</ClInclude>
8689
</ItemGroup>
8790
</Project>

0 commit comments

Comments
 (0)