< prev index next >
src/hotspot/share/memory/heapInspection.hpp
Print this page
@@ -214,27 +214,26 @@
class KlassInfoTable;
class KlassInfoClosure;
class HeapInspection : public StackObj {
public:
- void heap_inspection(outputStream* st, size_t parallel_thread_num = 1) NOT_SERVICES_RETURN;
- size_t populate_table(KlassInfoTable* cit, BoolObjectClosure* filter = NULL, size_t parallel_thread_num = 1) NOT_SERVICES_RETURN_(0);
+ void heap_inspection(outputStream* st, uint parallel_thread_num = 1) NOT_SERVICES_RETURN;
+ uint populate_table(KlassInfoTable* cit, BoolObjectClosure* filter = NULL, uint parallel_thread_num = 1) NOT_SERVICES_RETURN_(0);
static void find_instances_at_safepoint(Klass* k, GrowableArray<oop>* result) NOT_SERVICES_RETURN;
private:
void iterate_over_heap(KlassInfoTable* cit, BoolObjectClosure* filter = NULL);
};
-// Task for parallel heap inspection. The parallel inspection can be fail
-// because of native OOM when allocation memory for TL-KlassInfoTable, it
-// will set success to false when OOM so serial inspection can be tried.
-// see work() implementation at heapInspection.cpp for more info.
+// Parallel heap inspection task. Parallel inspection can fail due to
+// a native OOM when allocating memory for TL-KlassInfoTable.
+// _success will be set false on an OOM, and serial inspection tried.
class ParHeapInspectTask : public AbstractGangTask {
private:
ParallelObjectIterator* _poi;
KlassInfoTable* _shared_cit;
BoolObjectClosure* _filter;
- size_t _shared_missed_count;
+ uint _missed_count;
bool _success;
Mutex _mutex;
public:
ParHeapInspectTask(ParallelObjectIterator* poi,
@@ -242,16 +241,16 @@
BoolObjectClosure* filter) :
AbstractGangTask("Iterating heap"),
_poi(poi),
_shared_cit(shared_cit),
_filter(filter),
- _shared_missed_count(0),
+ _missed_count(0),
_success(true),
_mutex(Mutex::leaf, "Parallel heap iteration data merge lock") {}
uint missed_count() const {
- return _shared_missed_count;
+ return _missed_count;
}
bool success() {
return _success;
}
< prev index next >