jvm
文章平均质量分 81
小健健健
一个搞安全的程序员
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java并发和锁,自己动手(一)
文章目录CAS(乐观锁)AtomicIntegerUnsafeConcurrentHashMapput CAS(乐观锁) CAS,是Compare and Swap的简称,在这个机制中有三个核心的参数: 主内存中存放的共享变量的值:V(一般情况下这个V是内存的地址值,通过这个地址可以获得内存中的值) 工作内存中共享变量的副本值,也叫预期值:A 需要将共享变量更新到的最新值:B 如上图中,主存中保存V值,线程中要使用V值要先从主存中读取V值到线程的工作内存A中,然后计算后变成B值,最后再把B值写回到内存V值原创 2022-04-08 12:50:32 · 565 阅读 · 0 评论 -
Tomcat类加载,自己看源码
在java本身的类加载器的基础上增加了5个类加载器 下载tomcat源码:https://tomcat.apache.org/download-90.cgi 找到java/org/apache/catalina/startup/Bootstrap.java 这个是启动类,找到这块,我们来看他的逻辑 main() -> start() -> init() -> initClassLoaders(),依次创建我们的三个类加载器 看创建类加载器的方法 private ClassLoader原创 2022-04-05 14:56:43 · 907 阅读 · 0 评论 -
jvm双亲委派源码,自己看,自己写ClassLoader
其中BootStrapClassLoader加载jre/lib/rt.jar resources.jar charsets.jar ExtClassLoader加载jre/ext/ AppClassLoader加载其他的类 找到sum.misc.Launcher包 在AppClassLoader.loadClass处打断点,随便执行个自己定义的类中的main方法 跟到核心类ClassLoader.loadClass,我先贴个图 我们先是从AppClassLoader进入 protected .原创 2022-04-05 04:47:46 · 398 阅读 · 0 评论
分享