352
353 inline double CMSStats::promotion_rate() const {
354 assert(valid(), "statistics not valid yet");
355 return gc0_promoted() / gc0_period();
356 }
357
358 inline double CMSStats::cms_allocation_rate() const {
359 assert(valid(), "statistics not valid yet");
360 return cms_allocated() / gc0_period();
361 }
362
363 inline double CMSStats::cms_consumption_rate() const {
364 assert(valid(), "statistics not valid yet");
365 return (gc0_promoted() + cms_allocated()) / gc0_period();
366 }
367
368 inline void ConcurrentMarkSweepGeneration::save_sweep_limit() {
369 cmsSpace()->save_sweep_limit();
370 }
371
372 inline size_t ConcurrentMarkSweepGeneration::capacity() const {
373 return _cmsSpace->capacity();
374 }
375
376 inline size_t ConcurrentMarkSweepGeneration::used() const {
377 return _cmsSpace->used();
378 }
379
380 inline size_t ConcurrentMarkSweepGeneration::free() const {
381 return _cmsSpace->free();
382 }
383
384 inline MemRegion ConcurrentMarkSweepGeneration::used_region() const {
385 return _cmsSpace->used_region();
386 }
387
388 inline MemRegion ConcurrentMarkSweepGeneration::used_region_at_save_marks() const {
389 return _cmsSpace->used_region_at_save_marks();
390 }
391
392 inline void MarkFromRootsClosure::do_yield_check() {
393 if (ConcurrentMarkSweepThread::should_yield() &&
394 !_collector->foregroundGCIsActive() &&
395 _yield) {
396 do_yield_work();
397 }
398 }
399
400 inline void Par_MarkFromRootsClosure::do_yield_check() {
401 if (ConcurrentMarkSweepThread::should_yield() &&
402 !_collector->foregroundGCIsActive()) {
403 do_yield_work();
404 }
405 }
406
407 inline void PushOrMarkClosure::do_yield_check() {
|
352
353 inline double CMSStats::promotion_rate() const {
354 assert(valid(), "statistics not valid yet");
355 return gc0_promoted() / gc0_period();
356 }
357
358 inline double CMSStats::cms_allocation_rate() const {
359 assert(valid(), "statistics not valid yet");
360 return cms_allocated() / gc0_period();
361 }
362
363 inline double CMSStats::cms_consumption_rate() const {
364 assert(valid(), "statistics not valid yet");
365 return (gc0_promoted() + cms_allocated()) / gc0_period();
366 }
367
368 inline void ConcurrentMarkSweepGeneration::save_sweep_limit() {
369 cmsSpace()->save_sweep_limit();
370 }
371
372 inline MemRegion ConcurrentMarkSweepGeneration::used_region_at_save_marks() const {
373 return _cmsSpace->used_region_at_save_marks();
374 }
375
376 inline void MarkFromRootsClosure::do_yield_check() {
377 if (ConcurrentMarkSweepThread::should_yield() &&
378 !_collector->foregroundGCIsActive() &&
379 _yield) {
380 do_yield_work();
381 }
382 }
383
384 inline void Par_MarkFromRootsClosure::do_yield_check() {
385 if (ConcurrentMarkSweepThread::should_yield() &&
386 !_collector->foregroundGCIsActive()) {
387 do_yield_work();
388 }
389 }
390
391 inline void PushOrMarkClosure::do_yield_check() {
|