Interface nsICycleCollectorHandlerType

nsICycleCollectorHandler is the interface JS code should implement to receive the results logged by an nsICycleCollectorListener instance. Pass an instance of this to the logger's 'processNext' method after the collection has run. This will describe the objects the cycle collector visited, the edges it found, and the conclusions it reached about the liveness of objects.

In more detail:

  • For each node in the graph:

  • a call is made to either |noteRefCountedObject| or |noteGCedObject|, to describe the node itself; and

  • for each edge starting at that node, a call is made to |noteEdge|.

  • Then, a series of calls are made to:

  • |describeRoot|, for reference-counted nodes that the CC has identified as being alive because there are unknown references to those nodes.

  • |describeGarbage|, for nodes the cycle collector has identified as garbage.

Any node not mentioned in a call to |describeRoot| or |describeGarbage| is neither a root nor garbage. The cycle collector was able to find all of the edges implied by the node's reference count.

Hierarchy

Methods

  • Increases the reference count for this interface. The associated instance will not be deleted unless the reference count is returned to zero.

    Returns

    The resulting reference count.

    Returns number

  • Parameters

    • aIID: object
    • Optional aInstancePtr: object

    Returns any

  • A run time mechanism for interface discovery.

    Returns

    NS_OK if the interface is supported by the associated instance, NS_NOINTERFACE if it is not.

    aInstancePtr must not be null.

    Parameters

    • aIID: object

      [in] A requested interface IID

    • aInstancePtr: object

      [out] A pointer to an interface pointer to receive the result.

    Returns void

  • Decreases the reference count for this interface. Generally, if the reference count returns to zero, the associated instance is deleted.

    Returns

    The resulting reference count.

    Returns number

  • Parameters

    • aAddress: string

    Returns void

  • Parameters

    • aAddress: string
    • aKnownEdges: number

    Returns void

  • Parameters

    • aFromAddress: string
    • aToAddress: string
    • aEdgeName: string

    Returns void

  • Parameters

    • aAddress: string
    • aMarked: boolean
    • aObjectDescription: string
    • aCompartmentAddress: string

    Returns void

  • Parameters

    • aAddress: string
    • aRefCount: number
    • aObjectDescription: string

    Returns void

Generated using TypeDoc