src/hotspot/share/gc/shenandoah/shenandoahHeapRegionCounters.cpp
changeset 59252 623722a6aeb9
parent 52925 9c18c9d839d3
child 59290 97d13893ec3c
equal deleted inserted replaced
59251:4cbfa5077d68 59252:623722a6aeb9
    74 void ShenandoahHeapRegionCounters::update() {
    74 void ShenandoahHeapRegionCounters::update() {
    75   if (ShenandoahRegionSampling) {
    75   if (ShenandoahRegionSampling) {
    76     jlong current = os::javaTimeMillis();
    76     jlong current = os::javaTimeMillis();
    77     jlong last = _last_sample_millis;
    77     jlong last = _last_sample_millis;
    78     if (current - last > ShenandoahRegionSamplingRate &&
    78     if (current - last > ShenandoahRegionSamplingRate &&
    79             Atomic::cmpxchg(current, &_last_sample_millis, last) == last) {
    79             Atomic::cmpxchg(&_last_sample_millis, last, current) == last) {
    80 
    80 
    81       ShenandoahHeap* heap = ShenandoahHeap::heap();
    81       ShenandoahHeap* heap = ShenandoahHeap::heap();
    82       jlong status = 0;
    82       jlong status = 0;
    83       if (heap->is_concurrent_mark_in_progress())      status |= 1 << 0;
    83       if (heap->is_concurrent_mark_in_progress())      status |= 1 << 0;
    84       if (heap->is_evacuation_in_progress())           status |= 1 << 1;
    84       if (heap->is_evacuation_in_progress())           status |= 1 << 1;