< prev index next >

src/hotspot/share/gc/g1/g1VMOperations.hpp

Print this page
@@ -78,15 +78,16 @@
  };
  
  // Concurrent G1 stop-the-world operations such as remark and cleanup.
  class VM_G1PauseConcurrent : public VM_Operation {
    uint         _gc_id;
+   bool         _is_shutting_down;
    const char*  _message;
  
  protected:
    VM_G1PauseConcurrent(const char* message) :
-     _gc_id(GCId::current()), _message(message) { }
+     _gc_id(GCId::current()), _is_shutting_down(false), _message(message) { }
    virtual void work() = 0;
  
    // Does this concurrent pause affect the memory pools? If so, update the collectionUsage()
    // MemoryMXBean for the old gen memory pool (which is the only pool registered for concurrent
    // pauses).

@@ -114,6 +115,17 @@
    VM_G1PauseCleanup() : VM_G1PauseConcurrent("Pause Cleanup") { }
    VMOp_Type type() const override { return VMOp_G1PauseCleanup; }
    void work() override;
  };
  
+ class VM_G1StopMarking : public VM_Operation {
+ public:
+   VM_G1StopMarking() : VM_Operation() { }
+   VMOp_Type type() const override { return VMOp_G1StopMarking; }
+ 
+   bool doit_prologue() override;
+   void doit() override;
+ 
+   bool is_gc_operation() const override { return true; }
+ };
+ 
  #endif // SHARE_GC_G1_G1VMOPERATIONS_HPP
< prev index next >