zoukankan      html  css  js  c++  java
  • JVM中存储类信息的三个表格

    摘自:《Java Performance》第三章

    Internal Class Loading Data

    The HotSpot VM maintains three hash tables to track class loading. The SystemDictionary contains loaded classes, which maps a class name/class loader pair to a klassOop. The SystemDictionary contains both class name/initiating loader pairs and class name/defining loader pairs. Entries are currently only removed at a safepoint. Safepoints are described in more detail in the “VM Operations and Safepoints” section later in the chapter. The PlaceholderTable contains classes that are currently being loaded. It is used for  ClassCircularityError checking and for parallel class loading for class loaders that support multithreaded class loading. The LoaderConstraintTable tracks constraints for type safety checking. These hash tables are all guarded by a lock; in the HotSpot VM it is called the SystemDictionary_lock. In general, the load class phase in the HotSpot VM is serialized using the Class loader object lock.

  • 相关阅读:
    http的8种请求方式
    死锁
    进程与线程
    vuex
    路由懒加载
    SPA单页面富应用
    组件中的data为什么必须是函数
    v-for中key的作用
    关于排序的常识总结
    关于树的常见操作-C++面试
  • 原文地址:https://www.cnblogs.com/jubincn/p/3381096.html
Copyright © 2011-2022 走看看