下载gperftools/gperftools
打开.sln编译生成文件
获取libtcmalloc_minimal.lib和libtcmalloc_minimal.dll
填写.lib文件路径
t填写PATH=[.dll文件路径]
填写
libtcmalloc_minimal.lib
和
__tcmalloc
测试代码
#include <Windows.h>
#include <iostream>
#include <chrono>
#define COUNT 1000*1000
using namespace std::chrono;
using namespace std;
void func()
{
size_t j = 0;
for (size_t i = 0; i < COUNT; ++i)
{
if (j > 1001)
{
j = 0;
}
int* pInt = (int*)malloc(i * sizeof(int));
free(pInt);
}
}
int main()
{
time_point<high_resolution_clock> Start = high_resolution_clock::now();
func();
int Time = duration_cast<milliseconds>(high_resolution_clock::now() - Start).count();
cout << Time << endl;
return 0;
}