
Java
哈里哈气
个人博客:http://zhaoxincheng.com/
展开
-
JVM类加载器
JVM类加载分为:跟类加载器:Bootstrap类加载器,由c++编写,主要负责加载虚拟机核心类库的加载。扩展类加载器:主要是加载JAVA_HOME下面的jre/lb/ext子目录里面的类库,该加载器是由纯JAVA语言实现的,是跟类加载器的子加载器。系统类加载器:主要负责classpath下的类库资源加载,其父类加载器是扩展类加载器,它也是默认的自定义类加载器。双亲委托机制:一个类加载被...原创 2019-03-19 20:53:09 · 209 阅读 · 0 评论 -
进程间8种通信方式详解
原文:https://blog.youkuaiyun.com/violet_echo_0908/article/details/51201278进程通信:每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程A把数据从用户空间拷到内核缓冲区,进程B再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信。1 匿名...转载 2019-03-16 11:59:02 · 230 阅读 · 0 评论 -
线程上下文类加载器和volatile
线程的上下文类加载是JDK1.2开始引进,分别获取和设置当前线程的上下文类加载,如果没有设置,那么就会和父线程的类加载器保持一致。为什么要有线程上下文类加载器?Jvm的双亲加载即有一定缺陷,JDK核心类库提供很多spi,包括jdbc、jbi、JCE等等,Jdk只规定了这些接口之间的逻辑关系,但不提供具体实现。例如:Jdbc这个类库在加载的时候想要实现透明化,又不想与JDK核心库绑定,但是...原创 2019-03-20 20:33:10 · 1371 阅读 · 0 评论 -
Java类加载过程
类的加载简介1.类加载一般分为三大阶段:加载、连接和初始化加载阶段:主要查找class文件(二进制文件)连接阶段:可以分为验证、准备、解析三个更为详细的阶段验证:主要确保class版本、class文件的魔术因子等准备:为类的静态变量分配内存,并且初始化默认的值解析:把类中的符号信用转为直接引用初始化阶段:为类的静态变量赋予正确的初始值。2.类的主动和被动使用主动使用(6种):...原创 2019-03-18 21:10:04 · 357 阅读 · 0 评论