< prev index next >

src/hotspot/share/runtime/deoptimization.cpp

Print this page
rev 47287 : Port 09.17.Thread_SMR_logging_update from JDK9 to JDK10
rev 47289 : eosterlund, stefank CR - refactor code into threadSMR.cpp and threadSMR.hpp
rev 47292 : stefank, coleenp CR - refactor most JavaThreadIterator usage to use JavaThreadIteratorWithHandle.

@@ -1302,14 +1302,11 @@
     return;
   }
 
   assert(SafepointSynchronize::is_at_safepoint(), "must only be called from safepoint");
   GrowableArray<Handle>* objects_to_revoke = new GrowableArray<Handle>();
-  {
-    ThreadsListHandle tlh;
-    JavaThreadIterator jti(tlh.list());
-    for (JavaThread* jt = jti.first(); jt != NULL; jt = jti.next()) {
+  for (JavaThreadIteratorWithHandle jtiwh; JavaThread *jt = jtiwh.next(); ) {
       if (jt->has_last_Java_frame()) {
         StackFrameStream sfs(jt, true);
         while (!sfs.is_done()) {
           frame* cur = sfs.current();
           if (cb->contains(cur->pc())) {

@@ -1323,11 +1320,10 @@
             collect_monitors(cvf, objects_to_revoke);
           }
           sfs.next();
         }
       }
-    }
   }
   BiasedLocking::revoke_at_safepoint(objects_to_revoke);
 }
 
 
< prev index next >