org.jikesrvm.jni
Class JNIGlobalRefTable

java.lang.Object
  extended by org.jikesrvm.jni.JNIGlobalRefTable

public class JNIGlobalRefTable
extends Object

Weak Global References are global references (negative numbers), with the 2^30 bit UNset. Mask in the 2^30 bit to get the real index into the table.


Field Summary
private static int free
           
static AddressArray JNIGlobalRefs
           
static int STRONG_REF_BIT
           
 
Constructor Summary
JNIGlobalRefTable()
           
 
Method Summary
private static void copyAndReplaceGlobalRefs(AddressArray newGlobalRefs)
           
(package private) static void deleteGlobalRef(int index)
           
(package private) static void deleteWeakRef(int index)
           
(package private) static Object globalRef(int index)
           
(package private) static boolean isWeakRef(int index)
           
(package private) static int newGlobalRef(Object referent)
           
(package private) static int newWeakRef(Object referent)
           
(package private) static Object ref(int index)
           
(package private) static Object weakRef(int index)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

JNIGlobalRefs

public static AddressArray JNIGlobalRefs

free

private static int free

STRONG_REF_BIT

public static final int STRONG_REF_BIT
See Also:
Constant Field Values
Constructor Detail

JNIGlobalRefTable

public JNIGlobalRefTable()
Method Detail

newGlobalRef

static int newGlobalRef(Object referent)

copyAndReplaceGlobalRefs

private static void copyAndReplaceGlobalRefs(AddressArray newGlobalRefs)

newWeakRef

static int newWeakRef(Object referent)

deleteGlobalRef

static void deleteGlobalRef(int index)

deleteWeakRef

static void deleteWeakRef(int index)

globalRef

static Object globalRef(int index)

weakRef

static Object weakRef(int index)

ref

static Object ref(int index)

isWeakRef

static boolean isWeakRef(int index)