2035 size_t ShenandoahHeap::num_regions() {
2036 return _num_regions;
2037 }
2038
2039 size_t ShenandoahHeap::max_regions() {
2040 return _max_regions;
2041 }
2042
2043 GCTracer* ShenandoahHeap::tracer() {
2044 return shenandoahPolicy()->tracer();
2045 }
2046
2047 size_t ShenandoahHeap::tlab_used(Thread* thread) const {
2048 return _free_regions->used();
2049 }
2050
2051 void ShenandoahHeap::cancel_concgc() {
2052 // only report it once
2053 if (!_cancelled_concgc) {
2054 log_info(gc)("Cancelling GC");
2055 _cancelled_concgc = true;
2056 OrderAccess::fence();
2057 _shenandoah_policy->report_concgc_cancelled();
2058 }
2059
2060 }
2061
2062 void ShenandoahHeap::clear_cancelled_concgc() {
2063 _cancelled_concgc = false;
2064 }
2065
2066 uint ShenandoahHeap::max_workers() {
2067 return _max_workers;
2068 }
2069
2070 uint ShenandoahHeap::max_parallel_workers() {
2071 return _max_parallel_workers;
2072 }
2073 uint ShenandoahHeap::max_conc_workers() {
2074 return _max_conc_workers;
2075 }
2076
|
2035 size_t ShenandoahHeap::num_regions() {
2036 return _num_regions;
2037 }
2038
2039 size_t ShenandoahHeap::max_regions() {
2040 return _max_regions;
2041 }
2042
2043 GCTracer* ShenandoahHeap::tracer() {
2044 return shenandoahPolicy()->tracer();
2045 }
2046
2047 size_t ShenandoahHeap::tlab_used(Thread* thread) const {
2048 return _free_regions->used();
2049 }
2050
2051 void ShenandoahHeap::cancel_concgc() {
2052 // only report it once
2053 if (!_cancelled_concgc) {
2054 log_info(gc)("Cancelling GC");
2055 OrderAccess::release_store(&_cancelled_concgc, true);
2056 _shenandoah_policy->report_concgc_cancelled();
2057 }
2058
2059 }
2060
2061 void ShenandoahHeap::clear_cancelled_concgc() {
2062 _cancelled_concgc = false;
2063 }
2064
2065 uint ShenandoahHeap::max_workers() {
2066 return _max_workers;
2067 }
2068
2069 uint ShenandoahHeap::max_parallel_workers() {
2070 return _max_parallel_workers;
2071 }
2072 uint ShenandoahHeap::max_conc_workers() {
2073 return _max_conc_workers;
2074 }
2075
|