src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp

Print this page
rev 3754 : 7189971: Implement CMSWaitDuration for non-incremental mode of CMS
Summary: In the incremental mode of CMS the CMSWaitDuration delays the iCMS cycle until after a scavenge. Implement the same for the non-incremental mode.
Reviewed-by:
Contributed-by: Michal Frajt <michal@frajt.eu>

@@ -133,16 +133,22 @@
   }
   static bool cms_thread_wants_cms_token() {
     return CMS_flag_is_set(CMS_cms_wants_token);
   }
 
-  // Wait on CMS lock until the next synchronous GC
+  // Wait on CMS lock until the next event
   // or given timeout, whichever is earlier. A timeout value
   // of 0 indicates that there is no upper bound on the wait time.
   // A concurrent full gc request terminates the wait.
   void wait_on_cms_lock(long t_millis);
 
+  // Wait on CMS lock until the next synchronous GC
+  // or given timeout, whichever is earlier. A timeout value
+  // of 0 indicates that there is no upper bound on the wait time.
+  // A concurrent full gc request terminates the wait.
+  void wait_on_cms_lock_for_scavenge(long t_millis);
+
   // The CMS thread will yield during the work portion of its cycle
   // only when requested to.  Both synchronous and asychronous requests
   // are provided:
   // (1) A synchronous request is used for young gen collections and
   //     for direct allocations.  The requesting thread increments