摘要: 转至:https://coolshel 在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障,并且这个事发生了很多次,原因是在Java语言在并发情况下使用HashMap造成Race Condition,从而导致死循环。这个事情我4、5年前也经历过,本来觉得没什么好写的,因为Java的Hash 阅读全文
posted @ 2017-10-22 19:54 bf378 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 多线程调试设置可以参考:http://www.cnblogs.com/leodaxin/p/7710630.html 1 断点设置如图: 2 测试代码,然后进行debug 3:启动debug,我们可以在Threads Tab选项双击需要进行单步调试的线程 然后选择Frames Tab选项中调试的线程 阅读全文
posted @ 2017-10-22 17:12 bf378 阅读(27852) 评论(2) 推荐(1) 编辑
摘要: 转至:http://blog.csdn.net/kevindai007/article/details/71412324 使用idea调试多线程的时候发现多线程无法调试,后来经过搜索发现,idea的断点有不同的模式,只有当Thread模式下才能调试多线程,设置方式如下: 之后就可以在debug模式按 阅读全文
posted @ 2017-10-22 16:43 bf378 阅读(18482) 评论(1) 推荐(0) 编辑
摘要: HashMap源码简单分析: 1 一切需要从HashMap属性字段说起: 2: 接下来查看一下HashMap的put方法: 3 put中调用的inflateTable方法: 4 put方法中调用的indexFor方法: 5 put方法中调用的addEntry方法: 6 addEntry方法中调用的c 阅读全文
posted @ 2017-10-22 11:30 bf378 阅读(890) 评论(0) 推荐(0) 编辑
摘要: 1 自定义类加载器: 实现规则: 自定义类加载器,需要重写findClass,然后通过调用loadClass进行类加载(loadClass通过递归实现类的双亲委派加载) 2 自定义ClassPath类加载器: 类加载器的继承关系图: ClassPath类加载器实现源码: 使用示例: 阅读全文
posted @ 2017-10-22 09:01 bf378 阅读(2722) 评论(0) 推荐(0) 编辑