Core: HeapLog added mutex

git-svn-id: svn://ultimatepp.org/upp/trunk@13455 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2019-06-28 09:00:59 +00:00
parent 43787e155e
commit 189a2b4738

View file

@ -174,6 +174,8 @@ void *Heap::AllocSz(size_t& sz)
#undef AllocSz
StaticMutex sHeapLogLock;
static FILE *sLog = fopen(GetExeDirFile("heap.log"), "w");
force_inline
@ -181,8 +183,10 @@ void *Heap::AllocSz(size_t& sz)
{
size_t sz0 = sz;
void *ptr = AllocSz0(sz);
if(sLog)
if(sLog) {
Mutex::Lock __(sHeapLogLock);
fprintf(sLog, "%x %zx %p\n", Thread::GetCurrentId(), sz, ptr);
}
return ptr;
}
@ -253,8 +257,10 @@ force_inline
void Heap::Free(void *ptr)
{
#ifdef flagHEAPLOG
if(sLog)
if(sLog) {
Mutex::Lock __(sHeapLogLock);
fprintf(sLog, "-%x %p\n", Thread::GetCurrentId(), ptr);
}
#endif
if(!ptr) return;
LLOG("Free " << ptr);