src/hotspot/share/utilities/hashtable.hpp
changeset 47774 69c081ca110a
parent 47216 71c04702a3d5
child 50233 48d4abe945f1
equal deleted inserted replaced
47773:6e3ab27f9144 47774:69c081ca110a
   235 
   235 
   236   void free_entry(BasicHashtableEntry<F>* entry);
   236   void free_entry(BasicHashtableEntry<F>* entry);
   237 
   237 
   238   int number_of_entries() const { return _number_of_entries; }
   238   int number_of_entries() const { return _number_of_entries; }
   239 
   239 
       
   240   bool resize(int new_size);
       
   241 
   240   template <class T> void verify_table(const char* table_name) PRODUCT_RETURN;
   242   template <class T> void verify_table(const char* table_name) PRODUCT_RETURN;
   241 };
   243 };
   242 
   244 
   243 
   245 
   244 template <class T, MEMFLAGS F> class Hashtable : public BasicHashtable<F> {
   246 template <class T, MEMFLAGS F> class Hashtable : public BasicHashtable<F> {
   279 
   281 
   280   // The following method is not MT-safe and must be done under lock.
   282   // The following method is not MT-safe and must be done under lock.
   281   HashtableEntry<T, F>** bucket_addr(int i) {
   283   HashtableEntry<T, F>** bucket_addr(int i) {
   282     return (HashtableEntry<T, F>**)BasicHashtable<F>::bucket_addr(i);
   284     return (HashtableEntry<T, F>**)BasicHashtable<F>::bucket_addr(i);
   283   }
   285   }
   284 
       
   285 };
   286 };
   286 
   287 
   287 template <class T, MEMFLAGS F> class RehashableHashtable : public Hashtable<T, F> {
   288 template <class T, MEMFLAGS F> class RehashableHashtable : public Hashtable<T, F> {
   288  friend class VMStructs;
   289  friend class VMStructs;
   289  protected:
   290  protected: