class WorkerTask; class G1CMBitMap; class G1FullGCMarker; class G1FullGCScope; class G1FullGCCompactionPoint; class GCMemoryManager; class HeapRegion; class ReferenceProcessor;
// Subject-to-discovery closure for reference processing during Full GC. During // Full GC the whole heap is subject to discovery. class G1FullGCSubjectToDiscoveryClosure: public BoolObjectClosure { public: bool do_object_b(oop p) {
assert(p != NULL, "must be"); returntrue;
}
};
// Full GC Mark that holds GC id and CPU time trace. Needs to be separate // from the G1FullCollector and G1FullGCScope to allow the Full GC logging // to have the same structure as the Young GC logging. class G1FullGCMark : StackObj {
GCIdMark _gc_id;
G1FullGCTracer _tracer;
GCTraceCPUTime _cpu_time; public:
G1FullGCMark() : _gc_id(), _tracer(), _cpu_time(&_tracer) { }
G1FullGCTracer* tracer() { return &_tracer; }
};
// The G1FullCollector holds data associated with the current Full GC. class G1FullCollector : StackObj {
G1CollectedHeap* _heap;
G1FullGCScope _scope;
uint _num_workers;
G1FullGCMarker** _markers;
G1FullGCCompactionPoint** _compaction_points;
OopQueueSet _oop_queue_set;
ObjArrayTaskQueueSet _array_queue_set;
PreservedMarksSet _preserved_marks_set;
G1FullGCCompactionPoint _serial_compaction_point;
G1IsAliveClosure _is_alive;
ReferenceProcessorIsAliveMutator _is_alive_mutator;
G1RegionMarkStats* _live_stats;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.