From 1cc1abe1aba852ff70f63da37550975bfca303d2 Mon Sep 17 00:00:00 2001 From: Roman Lygin Date: Sun, 19 Aug 2012 11:01:32 +0400 Subject: [PATCH] 0023393: Improve usability of OSD_MAllocHook::CollectBySize Usability of OSD_MAllocHook::CollectBySize was improved: - fields of OSD_MAllocHook::CollectBySize are made public (not private) to enable access for debugging purposes. - added field myMaxAllocSize to denote maximum tracked size --- src/OSD/OSD_MAllocHook.cxx | 1 + src/OSD/OSD_MAllocHook.hxx | 12 +++++++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/OSD/OSD_MAllocHook.cxx b/src/OSD/OSD_MAllocHook.cxx index a2ac3f4884..23dc25ffd0 100755 --- a/src/OSD/OSD_MAllocHook.cxx +++ b/src/OSD/OSD_MAllocHook.cxx @@ -452,6 +452,7 @@ OSD_MAllocHook::CollectBySize::~CollectBySize() //======================================================================= #define MAX_ALLOC_SIZE 2000000u +const size_t OSD_MAllocHook::CollectBySize::myMaxAllocSize = MAX_ALLOC_SIZE; void OSD_MAllocHook::CollectBySize::Reset() { diff --git a/src/OSD/OSD_MAllocHook.hxx b/src/OSD/OSD_MAllocHook.hxx index f411fa8ce4..a983900a3b 100755 --- a/src/OSD/OSD_MAllocHook.hxx +++ b/src/OSD/OSD_MAllocHook.hxx @@ -132,7 +132,7 @@ public: Standard_EXPORT virtual void AllocEvent(size_t, long); Standard_EXPORT virtual void FreeEvent(void*, size_t, long); - private: + public: struct Numbers { int nbAlloc; @@ -140,11 +140,13 @@ public: int nbLeftPeak; Numbers() : nbAlloc(0), nbFree(0), nbLeftPeak(0) {} }; + + static const size_t myMaxAllocSize; //!< maximum tracked size - Standard_Mutex myMutex; - Numbers* myArray; - ptrdiff_t myTotalLeftSize; - size_t myTotalPeakSize; + Standard_Mutex myMutex; //!< used for thread-safe access + Numbers* myArray; //!< indexed from 0 to myMaxAllocSize-1 + ptrdiff_t myTotalLeftSize; //!< currently remained allocated size + size_t myTotalPeakSize; //!< maxium cumulative allocated size size_t myBreakSize; };