Panda3D
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Properties
Public Member Functions | Static Public Attributes | List of all members
ContainerLeakDetector Class Reference
Inheritance diagram for ContainerLeakDetector:
Job DirectObject

Public Member Functions

def __init__
 
def addPrivateObj
 
def destroy
 
def getContainerById
 
def getContainerByIdGen
 
def getContainerIds
 
def getContainerNameById
 
def getContainerNameByIdGen
 
def getLeakEvent
 
def getPathsToContainers
 
def getPathsToContainersNamed
 
def removeContainerById
 
def removePrivateObj
 
def run
 
- Public Member Functions inherited from Job
def __init__
 
def destroy
 
def finished
 
def getFinishedEvent
 
def getJobName
 
def getPriority
 
def isFinished
 
def printingBegin
 
def printingEnd
 
def resume
 
def run
 
def setPriority
 
def suspend
 
- Public Member Functions inherited from DirectObject
def __init__
 
def accept
 
def acceptOnce
 
def addTask
 
def detectLeaks
 
def doMethodLater
 
def getAllAccepting
 
def ignore
 
def ignoreAll
 
def isAccepting
 
def isIgnoring
 
def removeAllTasks
 
def removeTask
 

Static Public Attributes

tuple notify = directNotify.newCategory("ContainerLeakDetector")
 
tuple PrivateIds = set()
 
- Static Public Attributes inherited from Job
 Continue = None
 
tuple Done = object()
 
tuple Priorities = ScratchPad(Min=1, Low=100, Normal=1000, High=10000)
 
tuple Sleep = object()
 

Detailed Description

Low-priority Python object-graph walker that looks for leaking containers.
To reduce memory usage, this does a random walk of the Python objects to
discover containers rather than keep a set of all visited objects; it may
visit the same object many times but eventually it will discover every object.
Checks container sizes at ever-increasing intervals.

Constructor & Destructor Documentation

def __init__ (   self,
  name,
  firstCheckDelay = None 
)

Member Function Documentation

def addPrivateObj (   cls,
  obj 
)
def destroy (   self)
def getContainerById (   self,
  id 
)
def getContainerByIdGen (   self,
  id,
  kwArgs 
)
def getContainerIds (   self)
def getContainerNameById (   self,
  id 
)
def getContainerNameByIdGen (   self,
  id,
  kwArgs 
)
def getLeakEvent (   self)
def getPathsToContainers (   self,
  name,
  ot,
  doneCallback = None 
)
def getPathsToContainersNamed (   self,
  name,
  on,
  doneCallback = None 
)
def removeContainerById (   self,
  id 
)
def removePrivateObj (   cls,
  obj 
)
def run (   self)

Member Data Documentation

tuple notify = directNotify.newCategory("ContainerLeakDetector")
static
tuple PrivateIds = set()
static