src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp
changeset 57669 18f189e69b29
parent 57533 a2912ba36422
child 57903 5e2576c303a2
equal deleted inserted replaced
57668:33b160ef735c 57669:18f189e69b29
  1580   free_set()->recycle_trash();
  1580   free_set()->recycle_trash();
  1581 }
  1581 }
  1582 
  1582 
  1583 class ShenandoahConcurrentRootsEvacUpdateTask : public AbstractGangTask {
  1583 class ShenandoahConcurrentRootsEvacUpdateTask : public AbstractGangTask {
  1584 private:
  1584 private:
  1585   ShenandoahJNIHandleRoots<true /*concurrent*/> _jni_roots;
  1585   ShenandoahVMRoots<true /*concurrent*/>        _vm_roots;
  1586   ShenandoahWeakRoots<true /*concurrent*/>      _weak_roots;
  1586   ShenandoahWeakRoots<true /*concurrent*/>      _weak_roots;
  1587   ShenandoahClassLoaderDataRoots<true /*concurrent*/, false /*single threaded*/> _cld_roots;
  1587   ShenandoahClassLoaderDataRoots<true /*concurrent*/, false /*single threaded*/> _cld_roots;
  1588 
  1588 
  1589 public:
  1589 public:
  1590   ShenandoahConcurrentRootsEvacUpdateTask() :
  1590   ShenandoahConcurrentRootsEvacUpdateTask() :
  1595     ShenandoahEvacOOMScope oom;
  1595     ShenandoahEvacOOMScope oom;
  1596     {
  1596     {
  1597       // jni_roots and weak_roots are OopStorage backed roots, concurrent iteration
  1597       // jni_roots and weak_roots are OopStorage backed roots, concurrent iteration
  1598       // may race against OopStorage::release() calls.
  1598       // may race against OopStorage::release() calls.
  1599       ShenandoahEvacUpdateOopStorageRootsClosure cl;
  1599       ShenandoahEvacUpdateOopStorageRootsClosure cl;
  1600       _jni_roots.oops_do<ShenandoahEvacUpdateOopStorageRootsClosure>(&cl);
  1600       _vm_roots.oops_do<ShenandoahEvacUpdateOopStorageRootsClosure>(&cl);
  1601       _weak_roots.oops_do<ShenandoahEvacUpdateOopStorageRootsClosure>(&cl);
  1601       _weak_roots.oops_do<ShenandoahEvacUpdateOopStorageRootsClosure>(&cl);
  1602     }
  1602     }
  1603 
  1603 
  1604     {
  1604     {
  1605       ShenandoahEvacuateUpdateRootsClosure cl;
  1605       ShenandoahEvacuateUpdateRootsClosure cl;