129 // No support for block parsing.
130 virtual HeapWord* block_start(const void* addr) const { return NULL; }
131 virtual size_t block_size(const HeapWord* addr) const { return 0; }
132 virtual bool block_is_obj(const HeapWord* addr) const { return false; }
133
134 // No GC threads
135 virtual void print_gc_threads_on(outputStream* st) const {}
136 virtual void gc_threads_do(ThreadClosure* tc) const {}
137
138 // No heap verification
139 virtual void prepare_for_verify() {}
140 virtual void verify(VerifyOption option) {}
141
142 virtual jlong millis_since_last_gc() {
143 // Report time since the VM start
144 return os::elapsed_counter() / NANOSECS_PER_MILLISEC;
145 }
146
147 virtual void print_on(outputStream* st) const;
148 virtual void print_tracing_info() const;
149
150 };
151
152 #endif // SHARE_GC_EPSILON_EPSILONHEAP_HPP
|
129 // No support for block parsing.
130 virtual HeapWord* block_start(const void* addr) const { return NULL; }
131 virtual size_t block_size(const HeapWord* addr) const { return 0; }
132 virtual bool block_is_obj(const HeapWord* addr) const { return false; }
133
134 // No GC threads
135 virtual void print_gc_threads_on(outputStream* st) const {}
136 virtual void gc_threads_do(ThreadClosure* tc) const {}
137
138 // No heap verification
139 virtual void prepare_for_verify() {}
140 virtual void verify(VerifyOption option) {}
141
142 virtual jlong millis_since_last_gc() {
143 // Report time since the VM start
144 return os::elapsed_counter() / NANOSECS_PER_MILLISEC;
145 }
146
147 virtual void print_on(outputStream* st) const;
148 virtual void print_tracing_info() const;
149 void print_heap_info(size_t used) const;
150 void print_metaspace_info() const;
151
152 };
153
154 #endif // SHARE_GC_EPSILON_EPSILONHEAP_HPP
|