hotspot/src/share/vm/memory/referencePolicy.hpp
changeset 1606 dcf9714addbe
parent 1 489c9b5090e2
child 1610 5dddd195cc86
--- a/hotspot/src/share/vm/memory/referencePolicy.hpp	Thu Nov 20 12:27:41 2008 -0800
+++ b/hotspot/src/share/vm/memory/referencePolicy.hpp	Thu Nov 20 16:56:09 2008 -0800
@@ -26,9 +26,11 @@
 // should be cleared.
 
 
-class ReferencePolicy : public ResourceObj {
+class ReferencePolicy : public CHeapObj {
  public:
   virtual bool should_clear_reference(oop p)       { ShouldNotReachHere(); return true; }
+  // Capture state (of-the-VM) information needed to evaluate the policy
+  virtual void snap() { /* do nothing */ }
 };
 
 class NeverClearPolicy : public ReferencePolicy {
@@ -48,6 +50,8 @@
  public:
   LRUCurrentHeapPolicy();
 
+  // Capture state (of-the-VM) information needed to evaluate the policy
+  void snap();
   bool should_clear_reference(oop p);
 };
 
@@ -58,5 +62,7 @@
  public:
   LRUMaxHeapPolicy();
 
+  // Capture state (of-the-VM) information needed to evaluate the policy
+  void snap();
   bool should_clear_reference(oop p);
 };