Skip to content

Commit 3e59917

Browse files
committed
fixed:memory cache query is incorrect
1 parent 72950e4 commit 3e59917

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ bool CMemoryCache_DBData::MemoryCache_DBData_DataInsert(XENGINE_DBMESSAGEQUEUE*
136136

137137
MEMORYCACHE_DBINFO st_DBInfo = {};
138138

139-
st_DBInfo.nTimeStart = time(NULL);
139+
st_DBInfo.nTimeLast = st_DBInfo.nTimeStart = time(NULL);
140140
st_DBInfo.st_DBMessageInfo = *pSt_DBMessageInfo;
141141

142142
std::tuple<__int64x, std::string> stl_Key(pSt_DBMessageInfo->nQueueSerial, pSt_DBMessageInfo->tszQueueName);
@@ -297,7 +297,7 @@ XHTHREAD CALLBACK CMemoryCache_DBData::DBModule_MQUser_TimeThread(XPVOID lParam)
297297
pClass_This->st_LockerQuery.lock_shared();
298298
for (auto stl_MapIterator = pClass_This->stl_MapQuery.begin(); stl_MapIterator != pClass_This->stl_MapQuery.end(); stl_MapIterator++)
299299
{
300-
if (stl_MapIterator->second.nTimeLast > (nTimeEnd - pClass_This->m_nTimeLast))
300+
if ((nTimeEnd - stl_MapIterator->second.nTimeLast) > pClass_This->m_nTimeLast)
301301
{
302302
stl_ListDelete.push_back(stl_MapIterator->second.st_DBMessageInfo);
303303
}
@@ -320,6 +320,7 @@ XHTHREAD CALLBACK CMemoryCache_DBData::DBModule_MQUser_TimeThread(XPVOID lParam)
320320
pClass_This->lpCall_MemoryCache(ENUM_MEMORYCACHE_CALLBACK_TYPE_DATA_QUERY, false, pClass_This->stl_MapQuery.size(), (XPVOID)&st_DBMessage, pClass_This->m_lParam);
321321
}
322322
}
323+
stl_ListDelete.clear();
323324
std::this_thread::sleep_for(std::chrono::seconds(1));
324325
}
325326
return 0;

XEngine_Source/MQCore_MemoryCache/MemoryCache_DBUser/MemoryCache_DBUser.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ bool CMemoryCache_DBUser::MemoryCache_DBUser_DataInsert(XENGINE_PROTOCOL_USERINF
129129
{
130130
MEMORYCACHE_DBUSER st_DBInfo = {};
131131

132-
st_DBInfo.nTimeStart = time(NULL);
132+
st_DBInfo.nTimeLast = st_DBInfo.nTimeStart = time(NULL);
133133
st_DBInfo.st_DBUserInfo = *pSt_DBUserInfo;
134134
stl_MapQuery[pSt_DBUserInfo->tszUserName] = st_DBInfo;
135135
}
@@ -225,7 +225,7 @@ XHTHREAD CALLBACK CMemoryCache_DBUser::DBModule_MQUser_TimeThread(XPVOID lParam)
225225
pClass_This->st_LockerQuery.lock_shared();
226226
for (auto stl_MapIterator = pClass_This->stl_MapQuery.begin(); stl_MapIterator != pClass_This->stl_MapQuery.end(); stl_MapIterator++)
227227
{
228-
if (stl_MapIterator->second.nTimeLast > (nTimeEnd - pClass_This->m_nTimeLast))
228+
if ((nTimeEnd - stl_MapIterator->second.nTimeLast) > pClass_This->m_nTimeLast)
229229
{
230230
stl_ListDelete.push_back(stl_MapIterator->second.st_DBUserInfo);
231231
}
@@ -248,6 +248,7 @@ XHTHREAD CALLBACK CMemoryCache_DBUser::DBModule_MQUser_TimeThread(XPVOID lParam)
248248
pClass_This->lpCall_MemoryCache(ENUM_MEMORYCACHE_CALLBACK_TYPE_USER_QUERY, false, pClass_This->stl_MapQuery.size(), (XPVOID)&st_DBUser, pClass_This->m_lParam);
249249
}
250250
}
251+
stl_ListDelete.clear();
251252
std::this_thread::sleep_for(std::chrono::seconds(1));
252253
}
253254
return 0;

0 commit comments

Comments
 (0)