Heap monitoring file format

In heap monitoring output files, each line describes an event that indicates that:

Here is an example of each type of event:

      Thread      Time of event       Address     Size    Type            Stack crawl
      2-22982     759537687555872     0xb2362718  del     TIterator       TArrayIterator...
      2-22982     759537687558595     0xb2362950  12      novtbl          THybridNumber...
      0-0         old                 0xb24020d0  48      TLocalSemaphore

Thread Identifier for the thread that called new() or delete(). For old blocks, this field is 0-0.
Time of event Time, in microseconds, of the event. Use this value to determine the order of events and to compute the time between events, such as to find the age of a block at deletion. For blocks already on the heap when monitoring starts, this field is old.
Address Address of the first byte of the block.
Size Size of the block in bytes. If this is a deletion event, the size field is del.
Type Type of the block, for blocks that represent C++ objects. If the v-table pointer is Nil, this field is novtbl. If the v-table pointer is non-Nil, but it cannot be followed to a valid destructor, this field is notype. Note that only deletion events and preexisting block events can have type information. Allocation events are always novtbl because the constructor, if any, has not yet
been called.
Stack crawl Function that called new() or delete(). For old blocks, this field is empty. The stack crawl consists of several function names, separated by bar (|) character. The first function name is the innermost. It was called by the next function name, and so forth. In the example, the stack crawls have been abbreviated.
A full stack crawl looks like this:
    TArrayIterator::~TArrayIterator()|THybridNumerals::AddFormattingPairAbsolutely(unsigned short,long)|THybridNumerals::AddFormattingPair(unsigned short,long)|THybridNumerals::CreateStandardHexNumerals()|TTieredTextBuffer::NumberFormat()|TTieredTextBuffer::operator<<(const long)|TTieredTextBuffer::operator<<(const int)|TLocalHeapMonitorTest::ShowMem(void*,long)


[Contents] [Previous] [Next]
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.

Generated with WebMaker