src/hotspot/share/oops/weakHandle.hpp
changeset 54511 fbfcebad8e66
parent 53244 9807daeb47c4
equal deleted inserted replaced
54510:c97a91097f9f 54511:fbfcebad8e66
    37 // the GC cycle.  The runtime structures that reference the oop must test
    37 // the GC cycle.  The runtime structures that reference the oop must test
    38 // if the value is NULL.  If it is NULL, it has been cleaned out by GC.
    38 // if the value is NULL.  If it is NULL, it has been cleaned out by GC.
    39 // This is the vm version of jweak but has different GC lifetimes and policies,
    39 // This is the vm version of jweak but has different GC lifetimes and policies,
    40 // depending on the type.
    40 // depending on the type.
    41 
    41 
    42 enum WeakHandleType { vm_class_loader_data, vm_string_table_data };
    42 enum WeakHandleType { vm_class_loader_data, vm_string_table_data, vm_resolved_method_table_data };
    43 
    43 
    44 template <WeakHandleType T>
    44 template <WeakHandleType T>
    45 class WeakHandle {
    45 class WeakHandle {
    46  public:
    46  public:
    47  private:
    47  private:
    62 
    62 
    63   void print() const;
    63   void print() const;
    64   void print_on(outputStream* st) const;
    64   void print_on(outputStream* st) const;
    65 };
    65 };
    66 
    66 
    67 typedef WeakHandle<vm_class_loader_data> ClassLoaderWeakHandle;
       
    68 
       
    69 #endif // SHARE_OOPS_WEAKHANDLE_HPP
    67 #endif // SHARE_OOPS_WEAKHANDLE_HPP