fix: add more UT cases
This commit is contained in:
parent
72dfc06f44
commit
47394a6a0d
|
@ -424,6 +424,7 @@ int32_t ctgGetTbCfg(SCatalog* pCtg, SRequestConnInfo* pConn, SName* pTableName,
|
||||||
CTG_RET(TSDB_CODE_SUCCESS);
|
CTG_RET(TSDB_CODE_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
int32_t ctgGetTbTag(SCatalog* pCtg, SRequestConnInfo* pConn, SName* pTableName, SArray** pRes) {
|
int32_t ctgGetTbTag(SCatalog* pCtg, SRequestConnInfo* pConn, SName* pTableName, SArray** pRes) {
|
||||||
SVgroupInfo vgroupInfo = {0};
|
SVgroupInfo vgroupInfo = {0};
|
||||||
STableCfg* pCfg = NULL;
|
STableCfg* pCfg = NULL;
|
||||||
|
@ -474,6 +475,7 @@ _return:
|
||||||
|
|
||||||
CTG_RET(code);
|
CTG_RET(code);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int32_t ctgGetTbDistVgInfo(SCatalog* pCtg, SRequestConnInfo* pConn, SName* pTableName, SArray** pVgList) {
|
int32_t ctgGetTbDistVgInfo(SCatalog* pCtg, SRequestConnInfo* pConn, SName* pTableName, SArray** pVgList) {
|
||||||
STableMeta* tbMeta = NULL;
|
STableMeta* tbMeta = NULL;
|
||||||
|
@ -1695,6 +1697,7 @@ _return:
|
||||||
CTG_API_LEAVE(code);
|
CTG_API_LEAVE(code);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
int32_t catalogGetTableTag(SCatalog* pCtg, SRequestConnInfo* pConn, const SName* pTableName, SArray** pRes) {
|
int32_t catalogGetTableTag(SCatalog* pCtg, SRequestConnInfo* pConn, const SName* pTableName, SArray** pRes) {
|
||||||
CTG_API_ENTER();
|
CTG_API_ENTER();
|
||||||
|
|
||||||
|
@ -1709,6 +1712,7 @@ _return:
|
||||||
|
|
||||||
CTG_API_LEAVE(code);
|
CTG_API_LEAVE(code);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int32_t catalogRefreshGetTableCfg(SCatalog* pCtg, SRequestConnInfo* pConn, const SName* pTableName, STableCfg** pCfg) {
|
int32_t catalogRefreshGetTableCfg(SCatalog* pCtg, SRequestConnInfo* pConn, const SName* pTableName, STableCfg** pCfg) {
|
||||||
CTG_API_ENTER();
|
CTG_API_ENTER();
|
||||||
|
@ -1845,7 +1849,7 @@ _return:
|
||||||
CTG_API_LEAVE(code);
|
CTG_API_LEAVE(code);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
int32_t catalogAsyncUpdateViewMeta(SCatalog* pCtg, SViewMetaRsp* pMsg) {
|
int32_t catalogAsyncUpdateViewMeta(SCatalog* pCtg, SViewMetaRsp* pMsg) {
|
||||||
CTG_API_ENTER();
|
CTG_API_ENTER();
|
||||||
|
|
||||||
|
@ -1860,6 +1864,7 @@ _return:
|
||||||
|
|
||||||
CTG_API_LEAVE(code);
|
CTG_API_LEAVE(code);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int32_t catalogGetViewMeta(SCatalog* pCtg, SRequestConnInfo* pConn, const SName* pViewName, STableMeta** pTableMeta) {
|
int32_t catalogGetViewMeta(SCatalog* pCtg, SRequestConnInfo* pConn, const SName* pViewName, STableMeta** pTableMeta) {
|
||||||
CTG_API_ENTER();
|
CTG_API_ENTER();
|
||||||
|
|
|
@ -2992,6 +2992,7 @@ TEST(apiTest, catalogGetTableIndex_test) {
|
||||||
catalogDestroy();
|
catalogDestroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TEST(apiTest, catalogGetDBCfg_test) {
|
TEST(apiTest, catalogGetDBCfg_test) {
|
||||||
struct SCatalog *pCtg = NULL;
|
struct SCatalog *pCtg = NULL;
|
||||||
SRequestConnInfo connInfo = {0};
|
SRequestConnInfo connInfo = {0};
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#include "qwInt.h"
|
#include "qwInt.h"
|
||||||
#include "qworker.h"
|
#include "qworker.h"
|
||||||
|
|
||||||
|
#if 0
|
||||||
void qwSetConcurrentTaskNumCb(int32_t taskNum) {
|
void qwSetConcurrentTaskNumCb(int32_t taskNum) {
|
||||||
int32_t finTaskNum = TMIN(taskNum, tsNumOfQueryThreads * QW_DEFAULT_THREAD_TASK_NUM);
|
int32_t finTaskNum = TMIN(taskNum, tsNumOfQueryThreads * QW_DEFAULT_THREAD_TASK_NUM);
|
||||||
|
|
||||||
|
@ -33,6 +34,7 @@ void qwIncConcurrentTaskNumCb(void) {
|
||||||
|
|
||||||
//TODO
|
//TODO
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int32_t qwInitJobInfo(QW_FPARAMS_DEF, SQWJobInfo* pJob) {
|
int32_t qwInitJobInfo(QW_FPARAMS_DEF, SQWJobInfo* pJob) {
|
||||||
pJob->pSessions= taosHashInit(64, taosGetDefaultHashFunction(TSDB_DATA_TYPE_BINARY), false, HASH_ENTRY_LOCK);
|
pJob->pSessions= taosHashInit(64, taosGetDefaultHashFunction(TSDB_DATA_TYPE_BINARY), false, HASH_ENTRY_LOCK);
|
||||||
|
|
|
@ -60,6 +60,10 @@ extern "C" int32_t schHandleCallback(void *param, const SDataBuf *pMsg, int32_t
|
||||||
extern "C" int32_t schHandleNotifyCallback(void *param, SDataBuf *pMsg, int32_t code);
|
extern "C" int32_t schHandleNotifyCallback(void *param, SDataBuf *pMsg, int32_t code);
|
||||||
extern "C" int32_t schHandleLinkBrokenCallback(void *param, SDataBuf *pMsg, int32_t code);
|
extern "C" int32_t schHandleLinkBrokenCallback(void *param, SDataBuf *pMsg, int32_t code);
|
||||||
extern "C" int32_t schRescheduleTask(SSchJob *pJob, SSchTask *pTask);
|
extern "C" int32_t schRescheduleTask(SSchJob *pJob, SSchTask *pTask);
|
||||||
|
extern "C" int32_t schValidateRspMsgType(SSchJob *pJob, SSchTask *pTask, int32_t msgType);
|
||||||
|
extern "C" int32_t schProcessFetchRsp(SSchJob *pJob, SSchTask *pTask, char *msg, int32_t rspCode);
|
||||||
|
extern "C" int32_t schProcessResponseMsg(SSchJob *pJob, SSchTask *pTask, SDataBuf *pMsg, int32_t rspCode);
|
||||||
|
|
||||||
|
|
||||||
int64_t insertJobRefId = 0;
|
int64_t insertJobRefId = 0;
|
||||||
int64_t queryJobRefId = 0;
|
int64_t queryJobRefId = 0;
|
||||||
|
@ -1473,6 +1477,104 @@ TEST(otherTest, function) {
|
||||||
schMgmt.jobRef = -1;
|
schMgmt.jobRef = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST(otherTest, branch) {
|
||||||
|
SSchJob job = {0};
|
||||||
|
SSchTask task = {0};
|
||||||
|
schValidateRspMsgType(&job, &task, TDMT_SCH_MERGE_FETCH_RSP);
|
||||||
|
|
||||||
|
task.lastMsgType = TDMT_SCH_MERGE_FETCH_RSP - 1;
|
||||||
|
schValidateRspMsgType(&job, &task, TDMT_SCH_MERGE_FETCH_RSP);
|
||||||
|
|
||||||
|
schValidateRspMsgType(&job, &task, 0);
|
||||||
|
|
||||||
|
schValidateRspMsgType(&job, &task, TDMT_SCH_QUERY_RSP);
|
||||||
|
|
||||||
|
task.lastMsgType = TDMT_SCH_QUERY_RSP - 1;
|
||||||
|
schValidateRspMsgType(&job, &task, TDMT_SCH_QUERY_RSP);
|
||||||
|
|
||||||
|
schProcessFetchRsp(&job, &task, NULL, -1);
|
||||||
|
schProcessFetchRsp(&job, &task, NULL, 0);
|
||||||
|
|
||||||
|
job.fetchRes = (void*)0x1;
|
||||||
|
schProcessFetchRsp(&job, &task, (char*)taosMemoryMalloc(0), 0);
|
||||||
|
job.fetchRes = NULL;
|
||||||
|
|
||||||
|
SDataBuf databuf = {0};
|
||||||
|
databuf.msgType = TDMT_VND_ALTER_TABLE_RSP;
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.msgType = TDMT_VND_SUBMIT_RSP;
|
||||||
|
databuf.pData = taosMemoryMalloc(0);
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.msgType = TDMT_VND_DELETE_RSP;
|
||||||
|
databuf.pData = taosMemoryMalloc(0);
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.msgType = TDMT_SCH_QUERY_RSP;
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.msgType = TDMT_SCH_QUERY_RSP;
|
||||||
|
databuf.pData = taosMemoryMalloc(0);
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
|
||||||
|
databuf.msgType = TDMT_SCH_EXPLAIN_RSP;
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.msgType = TDMT_SCH_EXPLAIN_RSP;
|
||||||
|
databuf.pData = taosMemoryMalloc(0);
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
job.attr.explainMode = EXPLAIN_MODE_ANALYZE;
|
||||||
|
databuf.msgType = TDMT_SCH_EXPLAIN_RSP;
|
||||||
|
databuf.pData = taosMemoryMalloc(0);
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
job.fetchRes = (void*)0x1;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
job.fetchRes = NULL;
|
||||||
|
|
||||||
|
job.attr.explainMode = EXPLAIN_MODE_ANALYZE;
|
||||||
|
databuf.msgType = TDMT_SCH_EXPLAIN_RSP;
|
||||||
|
databuf.pData = taosMemoryMalloc(0);
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.msgType = TDMT_SCH_DROP_TASK_RSP;
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.msgType = TDMT_SCH_LINK_BROKEN;
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.msgType = 0;
|
||||||
|
job.status = JOB_TASK_STATUS_FAIL;
|
||||||
|
schProcessResponseMsg(&job, &task, &databuf, 0);
|
||||||
|
|
||||||
|
databuf.pData = taosMemoryMalloc(0);
|
||||||
|
schHandleHbCallback(NULL, &databuf, 0);
|
||||||
|
|
||||||
|
__async_send_cb_fn_t fp = NULL;
|
||||||
|
schGetCallbackFp(TDMT_SCH_TASK_NOTIFY, &fp);
|
||||||
|
schGetCallbackFp(0, &fp);
|
||||||
|
|
||||||
|
SQueryNodeEpId ep = {0};
|
||||||
|
schBuildAndSendHbMsg(&ep, NULL);
|
||||||
|
|
||||||
|
schBuildAndSendMsg(&job, &task, NULL, 0, NULL);
|
||||||
|
|
||||||
|
schMgmt.jobRef = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void schtReset() {
|
void schtReset() {
|
||||||
insertJobRefId = 0;
|
insertJobRefId = 0;
|
||||||
queryJobRefId = 0;
|
queryJobRefId = 0;
|
||||||
|
|
|
@ -2048,7 +2048,252 @@ TEST(DisablePoolFuncTest, MultiThreadTest) {
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
TEST(functionsTest, internalFunc) {
|
||||||
|
char* caseName = "functionsTest:internalFunc";
|
||||||
|
int32_t code = 0;
|
||||||
|
|
||||||
|
int64_t msize = 10;
|
||||||
|
void* pSession = NULL;
|
||||||
|
void* pJob = NULL;
|
||||||
|
|
||||||
|
mptInitPool();
|
||||||
|
|
||||||
|
memset(mptCtx.jobCtxs, 0, sizeof(*mptCtx.jobCtxs));
|
||||||
|
|
||||||
|
assert(0 == taosMemPoolCallocJob(0, 0, (void**)&pJob));
|
||||||
|
assert(0 == taosMemPoolInitSession(gMemPoolHandle, &pSession, pJob, "id"));
|
||||||
|
|
||||||
|
int32_t loopTimes = 1;
|
||||||
|
int64_t st = 0;
|
||||||
|
void **addrList = (void**)taosMemCalloc(loopTimes, POINTER_BYTES);
|
||||||
|
|
||||||
|
|
||||||
|
// MALLOC
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryMalloc(msize);
|
||||||
|
}
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryMalloc(msize);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryMalloc(msize);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
// CALLOC
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryCalloc(1, msize);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryCalloc(1, msize);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryCalloc(1, msize);
|
||||||
|
}
|
||||||
|
//mptFreeAddrList(addrList, loopTimes); NO FREE FOR REALLOC
|
||||||
|
|
||||||
|
// REALLOC
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryRealloc(addrList[i], msize);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryRealloc(addrList[i], msize);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryRealloc(addrList[i], msize);
|
||||||
|
}
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
// STRDUP
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptStrdup("abc");
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptStrdup("abc");
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptStrdup("abc");
|
||||||
|
}
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
// STRNDUP
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptStrndup("abc", 3);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptStrndup("abc", 3);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptStrndup("abc", 3);
|
||||||
|
}
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
// ALIGNALLOC
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryMallocAlign(8, msize);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryMallocAlign(8, msize);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
mptFreeAddrList(addrList, loopTimes);
|
||||||
|
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryMallocAlign(8, msize);
|
||||||
|
}
|
||||||
|
//mptFreeAddrList(addrList, loopTimes); NO FREE FOR GETSIZE
|
||||||
|
|
||||||
|
|
||||||
|
// GETSIZE
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
mptMemorySize(addrList[i]);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
mptMemorySize(addrList[i]);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
mptMemorySize(addrList[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// FREE
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
mptMemoryFree(addrList[i]);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryMalloc(msize);
|
||||||
|
}
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
mptMemoryFree(addrList[i]);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
addrList[i] = (char*)mptMemoryMalloc(msize);
|
||||||
|
}
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
mptMemoryFree(addrList[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// TRIM
|
||||||
|
|
||||||
|
bool trimed = false;
|
||||||
|
tsMemPoolFullFunc = 0;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
mptMemoryTrim(0, NULL);
|
||||||
|
mptMemoryTrim(0, &trimed);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
|
||||||
|
|
||||||
|
tsMemPoolFullFunc = 1;
|
||||||
|
mptEnableMemoryPoolUsage(gMemPoolHandle, pSession);
|
||||||
|
for (int32_t i = 0; i < loopTimes; ++i) {
|
||||||
|
mptMemoryTrim(0, NULL);
|
||||||
|
mptMemoryTrim(0, &trimed);
|
||||||
|
}
|
||||||
|
mptDisableMemoryPoolUsage();
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue