摘要: 实例化bean:对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBean进行实例化。对于ApplicationContext容器,当容器启动结束后,便实例化岁哦有的bean,容器通过获取Bea 阅读全文
posted @ 2020-05-27 00:08 尘世的流浪人 阅读(127) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal: 每个线程只能修改本线程在ThreadLocal中的值,各个线程之间互不干扰。 阅读全文
posted @ 2020-05-23 17:44 尘世的流浪人 阅读(721) 评论(0) 推荐(0) 编辑
摘要: 1. 使用wait/notifyAll 实现 阅读全文
posted @ 2020-05-23 17:34 尘世的流浪人 阅读(190) 评论(0) 推荐(0) 编辑
摘要: JVM 调优设计的几个方面: 1. 合理的编写程序 2.充分并合理的使用硬件资源 3.合理地进行jvm调优 非堆内存: 1. 堆外内存 2. 文件句柄 3. socket句柄 4. 数据库连接 详细解释: 1. 文件: 采用文件分割,,限制文件大小。 2. 网络IO: 限流 3. 大对象:对于jvm 阅读全文
posted @ 2020-05-17 19:41 尘世的流浪人 阅读(277) 评论(0) 推荐(0) 编辑
摘要: JDK 的 bin 目录的常用工具 1.jps 2. jstat class(监视类装载、卸载数量、总空间以及耗费的时间) jstat class 10470(进程id) jstat compiler 10470 jstat gc 10470 jstat gc 10470 1000 50 (1000 阅读全文
posted @ 2020-05-17 17:21 尘世的流浪人 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 内存分配 1. 对象首先会进入Eden区。 XX:SurvivorRatio = 8(默认值为8) 新生代:Eden+Survivor(S0)+Survivor(S1)=Xmn Xmn100m XX:SurvivorRatio = 8,请问Eden区多大? Eden:S0:S1 = Survivor 阅读全文
posted @ 2020-05-13 00:20 尘世的流浪人 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 1. JDK 1.7/1.8默认的垃圾回收器:Parallel Scavenge (新生代垃圾回收器)+Parallel Old(老年代垃圾回收器) 2. JDK1.9: 默认垃圾回收器:G1 参考:https://www.cnblogs.com/cxxjohnson/p/8625713.html 阅读全文
posted @ 2020-05-12 23:34 尘世的流浪人 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 加载class 文件到内存 1. 加载(三件事) 1.1 这个文件在哪儿?它是jar 还是class 文件? java TestClass java jar 1.2 静态存储结构转化方法区的运行时数据结构 jvm 运行时数据区 方法区:存放的是常量池和方法, 堆(heap):存放的是对象 1.3 j 阅读全文
posted @ 2020-05-06 19:53 尘世的流浪人 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 关于方法表的查找方法: 1. 找到访问控制access_flag 00 01== public 2. 找到简单名字name_index 00 17== inc 3. 找到描述符descriptor_index 00 18== ()I 翻译过来: public int inc() 4. 找到attri 阅读全文
posted @ 2020-05-05 11:33 尘世的流浪人 阅读(103) 评论(0) 推荐(0) 编辑
摘要: jvm 字节码速查表: https://blog.csdn.net/oYinHeZhiGuang/article/details/102790251 1. 是不是只有java编译器才可以将java转为class 字节码文件? 不是的,jRuby/Groovy/Scala/Jython 都是可以编译成 阅读全文
posted @ 2020-05-05 10:11 尘世的流浪人 阅读(240) 评论(0) 推荐(0) 编辑