< prev index next >
src/hotspot/share/runtime/jniHandles.hpp
Print this page
@@ -82,19 +82,22 @@
// Check for equality without keeping objects alive
static bool is_same_object(jobject handle1, jobject handle2);
// Local handles
static jobject make_local(oop obj);
- static jobject make_local(Thread* thread, oop obj); // Faster version when current thread is known
+ static jobject make_local(Thread* thread, oop obj, // Faster version when current thread is known
+ AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
inline static void destroy_local(jobject handle);
// Global handles
- static jobject make_global(Handle obj, AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
+ static jobject make_global(Handle obj,
+ AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
static void destroy_global(jobject handle);
// Weak global handles
- static jobject make_weak_global(Handle obj, AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
+ static jobject make_weak_global(Handle obj,
+ AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
static void destroy_weak_global(jobject handle);
static bool is_global_weak_cleared(jweak handle); // Test jweak without resolution
// Initialization
static void initialize();
@@ -174,14 +177,14 @@
// No more handles in the both the current and following blocks
void clear() { _top = 0; }
public:
// Handle allocation
- jobject allocate_handle(oop obj);
+ jobject allocate_handle(oop obj, AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
// Block allocation and block free list management
- static JNIHandleBlock* allocate_block(Thread* thread = NULL);
+ static JNIHandleBlock* allocate_block(Thread* thread = NULL, AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
static void release_block(JNIHandleBlock* block, Thread* thread = NULL);
// JNI PushLocalFrame/PopLocalFrame support
JNIHandleBlock* pop_frame_link() const { return _pop_frame_link; }
void set_pop_frame_link(JNIHandleBlock* block) { _pop_frame_link = block; }
< prev index next >