< prev index next >
src/share/vm/gc_interface/collectedHeap.hpp
Print this page
*** 78,87 ****
--- 78,88 ----
// CollectedHeap
// SharedHeap
// GenCollectedHeap
// G1CollectedHeap
// ParallelScavengeHeap
+ // ShenandoahHeap
//
class CollectedHeap : public CHeapObj<mtInternal> {
friend class VMStructs;
friend class IsGCActiveMark; // Block structured external access to _is_gc_active
*** 186,196 ****
enum Name {
Abstract,
SharedHeap,
GenCollectedHeap,
ParallelScavengeHeap,
! G1CollectedHeap
};
static inline size_t filler_array_max_size() {
return _filler_array_max_size;
}
--- 187,198 ----
enum Name {
Abstract,
SharedHeap,
GenCollectedHeap,
ParallelScavengeHeap,
! G1CollectedHeap,
! ShenandoahHeap
};
static inline size_t filler_array_max_size() {
return _filler_array_max_size;
}
*** 604,613 ****
--- 606,628 ----
void trace_heap_after_gc(GCTracer* gc_tracer);
// Heap verification
virtual void verify(bool silent, VerifyOption option) = 0;
+ // Shut down all GC workers and other GC related threads.
+ virtual void shutdown();
+
+ // Accumulate additional statistics from GCLABs.
+ virtual void accumulate_statistics_all_gclabs();
+
+ // Support for object pinning. This is used by JNI Get*Critical()
+ // and Release*Critical() family of functions. If supported, the GC
+ // must guarantee that pinned objects never move.
+ virtual bool supports_object_pinning() const;
+ virtual oop pin_object(JavaThread* thread, oop obj);
+ virtual void unpin_object(JavaThread* thread, oop obj);
+
// Non product verification and debugging.
#ifndef PRODUCT
// Support for PromotionFailureALot. Return true if it's time to cause a
// promotion failure. The no-argument version uses
// this->_promotion_failure_alot_count as the counter.
< prev index next >