org.eclipse.mat.snapshot.model

## Interface GCRootInfo.Type

Enclosing class:
  GCRootInfo

    public static interface GCRootInfo.Type

Reasons why an heap object is a garbage collection root.

No Implement:

### Field Summary

Fields
`static int` `BUSY_MONITOR` Everything you have called wait() or notify() on or you have synchronized on
`static int` `FINALIZABLE` An object which is a queue awaiting its finalizer to be run
`static int` `JAVA_LOCAL` Local variable, i.e.
`static int` `JAVA_STACK_FRAME` A Java stack frame containing references to Java locals
`static int` `NATIVE_LOCAL` Local variable in native code
`static int` `NATIVE_STACK` In or out parameters in native code; frequently seen as some methods have native parts and the objects handled as method parameters become GC roots, e.g.
`static int` `NATIVE_STATIC` Global variable in native code
`static int` `SYSTEM_CLASS` Class loaded by system class loader, e.g.
`static int` `THREAD_BLOCK` Started but not stopped threads
`static int` `THREAD_OBJ` Running or blocked Java threads
`static int` `UNFINALIZED` An object which has a finalize method, but has not been finalized and is not yet on the finalizer queue
`static int` `UNKNOWN` GC root of unknown type, or a type not matching any of the other declared types
`static int` `UNREACHABLE` An object which is unreachable from any other root, but has been marked as a root by MAT to retain objects which otherwise would not be included in the analysis

### Field Detail

#### UNKNOWN

    static final int UNKNOWN

GC root of unknown type, or a type not matching any of the other declared types

See Also:
  Constant Field Values

#### SYSTEM_CLASS

    static final int SYSTEM_CLASS

Class loaded by system class loader, e.g. java.lang.String

See Also:
  Constant Field Values

#### NATIVE_LOCAL

    static final int NATIVE_LOCAL

Local variable in native code

See Also:
  Constant Field Values

#### NATIVE_STATIC

    static final int NATIVE_STATIC

Global variable in native code

See Also:
  Constant Field Values

#### THREAD_BLOCK

    static final int THREAD_BLOCK

Started but not stopped threads

See Also:
  `THREAD_OBJ`, Constant Field Values

#### BUSY_MONITOR

    static final int BUSY_MONITOR

Everything you have called wait() or notify() on or you have synchronized on

See Also:
  Constant Field Values

#### JAVA_LOCAL

    static final int JAVA_LOCAL

Local variable, i.e. method input parameters or locally created objects of methods still on the stack of a thread

See Also:
  Constant Field Values

#### NATIVE_STACK

    static final int NATIVE_STACK

In or out parameters in native code; frequently seen as some methods have native parts and the objects handled as method parameters become GC roots, e.g. parameters used for file/network I/O methods or reflection

See Also:
  Constant Field Values

#### THREAD_OBJ

    static final int THREAD_OBJ

Running or blocked Java threads

See Also:
  Constant Field Values

#### FINALIZABLE

    static final int FINALIZABLE

An object which is a queue awaiting its finalizer to be run

See Also:
  `THREAD_BLOCK`, Constant Field Values

#### UNFINALIZED

    static final int UNFINALIZED

An object which has a finalize method, but has not been finalized and is not yet on the finalizer queue

See Also:
  Constant Field Values

#### UNREACHABLE

    static final int UNREACHABLE

An object which is unreachable from any other root, but has been marked as a root by MAT to retain objects which otherwise would not be included in the analysis

Since:
  1.0
See Also:
  Constant Field Values

#### JAVA_STACK_FRAME

    static final int JAVA_STACK_FRAME

A Java stack frame containing references to Java locals

Since:
  1.0
See Also:
  Constant Field Values