src/hotspot/share/classfile/stringTable.hpp
changeset 52047 7bc8b456e5ac
parent 51823 2a51125b2794
child 52402 72d4e10305b9
equal deleted inserted replaced
52046:2a85adf3c330 52047:7bc8b456e5ac
    31 #include "memory/padded.hpp"
    31 #include "memory/padded.hpp"
    32 #include "oops/oop.hpp"
    32 #include "oops/oop.hpp"
    33 #include "oops/weakHandle.hpp"
    33 #include "oops/weakHandle.hpp"
    34 #include "utilities/concurrentHashTable.hpp"
    34 #include "utilities/concurrentHashTable.hpp"
    35 
    35 
    36 class CompactStringTableWriter;
    36 class CompactHashtableWriter;
    37 class SerializeClosure;
    37 class SerializeClosure;
    38 
    38 
    39 class StringTable;
    39 class StringTable;
    40 class StringTableConfig;
    40 class StringTableConfig;
    41 typedef ConcurrentHashTable<WeakHandle<vm_string_table_data>,
    41 typedef ConcurrentHashTable<WeakHandle<vm_string_table_data>,
   161     { return StringTable::the_table()->_needs_rehashing; }
   161     { return StringTable::the_table()->_needs_rehashing; }
   162 
   162 
   163   // Sharing
   163   // Sharing
   164  private:
   164  private:
   165   oop lookup_shared(const jchar* name, int len, unsigned int hash) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
   165   oop lookup_shared(const jchar* name, int len, unsigned int hash) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
   166   static void copy_shared_string_table(CompactStringTableWriter* ch_table) NOT_CDS_JAVA_HEAP_RETURN;
   166   static void copy_shared_string_table(CompactHashtableWriter* ch_table) NOT_CDS_JAVA_HEAP_RETURN;
   167  public:
   167  public:
   168   static oop create_archived_string(oop s, Thread* THREAD) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
   168   static oop create_archived_string(oop s, Thread* THREAD) NOT_CDS_JAVA_HEAP_RETURN_(NULL);
   169   static void set_shared_string_mapped() { _shared_string_mapped = true; }
   169   static void set_shared_string_mapped() { _shared_string_mapped = true; }
   170   static bool shared_string_mapped()     { return _shared_string_mapped; }
   170   static bool shared_string_mapped()     { return _shared_string_mapped; }
   171   static void shared_oops_do(OopClosure* f) NOT_CDS_JAVA_HEAP_RETURN;
   171   static void shared_oops_do(OopClosure* f) NOT_CDS_JAVA_HEAP_RETURN;
   172   static void write_to_archive() NOT_CDS_JAVA_HEAP_RETURN;
   172   static void write_to_archive() NOT_CDS_JAVA_HEAP_RETURN;
   173   static void serialize(SerializeClosure* soc) NOT_CDS_JAVA_HEAP_RETURN;
   173   static void serialize_shared_table_header(SerializeClosure* soc) NOT_CDS_JAVA_HEAP_RETURN;
   174 
   174 
   175   // Jcmd
   175   // Jcmd
   176   static void dump(outputStream* st, bool verbose=false);
   176   static void dump(outputStream* st, bool verbose=false);
   177   // Debugging
   177   // Debugging
   178   static size_t verify_and_compare_entries();
   178   static size_t verify_and_compare_entries();