LibreOffice Module onlineupdate (master) 1
Public Types | Static Public Member Functions | List of all members
nsTraceRefcnt Class Reference

#include <nsTraceRefcnt.h>

Public Types

enum  StatisticsType {
  ALL_STATS ,
  NEW_STATS
}
 

Static Public Member Functions

static void Shutdown ()
 
static nsresult DumpStatistics (StatisticsType aType=ALL_STATS, FILE *aOut=0)
 
static void ResetStatistics ()
 
static void DemangleSymbol (const char *aSymbol, char *aBuffer, int aBufLen)
 
static void WalkTheStack (FILE *aStream)
 
static void WalkTheStackCached (FILE *aStream)
 This is a variant of |WalkTheStack| that uses |CodeAddressService| to cache the results of |NS_DescribeCodeAddress|. More...
 
static void SetActivityIsLegal (bool aLegal)
 Tell nsTraceRefcnt whether refcounting, allocation, and destruction activity is legal. More...
 

Detailed Description

Definition at line 12 of file nsTraceRefcnt.h.

Member Enumeration Documentation

◆ StatisticsType

Enumerator
ALL_STATS 
NEW_STATS 

Definition at line 17 of file nsTraceRefcnt.h.

Member Function Documentation

◆ DemangleSymbol()

static void nsTraceRefcnt::DemangleSymbol ( const char *  aSymbol,
char *  aBuffer,
int  aBufLen 
)
static

◆ DumpStatistics()

static nsresult nsTraceRefcnt::DumpStatistics ( StatisticsType  aType = ALL_STATS,
FILE aOut = 0 
)
static

◆ ResetStatistics()

static void nsTraceRefcnt::ResetStatistics ( )
static

◆ SetActivityIsLegal()

static void nsTraceRefcnt::SetActivityIsLegal ( bool  aLegal)
static

Tell nsTraceRefcnt whether refcounting, allocation, and destruction activity is legal.

This is used to trigger assertions for any such activity that occurs because of static constructors or destructors.

◆ Shutdown()

static void nsTraceRefcnt::Shutdown ( )
static

◆ WalkTheStack()

static void nsTraceRefcnt::WalkTheStack ( FILE aStream)
static

◆ WalkTheStackCached()

static void nsTraceRefcnt::WalkTheStackCached ( FILE aStream)
static

This is a variant of |WalkTheStack| that uses |CodeAddressService| to cache the results of |NS_DescribeCodeAddress|.

If |WalkTheStackCached| is being called frequently, it will be a few orders of magnitude faster than |WalkTheStack|. However, the cache uses a lot of memory, which can cause OOM crashes. Therefore, this should only be used for things like refcount logging which walk the stack extremely frequently.


The documentation for this class was generated from the following file: