09 2015 档案
摘要:以前在做项目的时候,遇到线上数据源泄漏等问题经常是一筹莫展。并且线上经常出现各种莫名奇妙的问题,想要查看方法参数,偏偏有些方法参数没有日志,因此只能通过补丁升级来解决问题。如果遇到紧急bug,同时又不能停服务进行升级则经常陷入超级囧的状态。最近研究JVM,偶然发现一个故障分析工具,就是接下来咱们...
阅读全文
摘要:前言在使用Memory Analyzer tool(MAT)分析内存泄漏(一)中,我介绍了内存泄漏的前因后果。在本文中,将介绍MAT如何根据heap dump分析泄漏根源。由于测试范例可能过于简单,很容易找出问题,但我期待借此举一反三。一开始不得不说说ClassLoader,本质上,它的工作就是把磁...
阅读全文
摘要:转自:http://hi.baidu.com/fancys_he/blog/item/2861344affcfe32609f7efd1.html句柄是WONDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例,窗口,控制,位图,GDI对象等等。...
阅读全文
摘要:程序计数器 程序计数器是一块较小的内存,它是线程私有的,可以看作是当前线程执行字节码的计数器。在虚拟机的概念模型中,字节码解释器就是通过这个计数器来找到下一个将要执行的指令。java中分支语句,循环,异常处理以及线程恢复都是通过程序计数器来实现的。由于JVM在执行线程的时候是通过CPU轮流执行各个线...
阅读全文
摘要:命令行 (1) $符号在命令中表示引用变量,可以export设置变量。 例如查看环境变量命令:echo $PATH 此处就是通过$引用PATH变量(这是个全局变量) 例如: d 当我们直接敲一个命令的时候,bash就去PATH变量记载的路径中寻找该程序。如果想运行一个自己安装的二进制程序,则需要先加上该命令所在的路径。 (2) man 命令 Man命令时专门解释其他命令的命令 ...
阅读全文
摘要:查找算法中主要涉及三种重要的数据结构来实现字典,即二叉查找树,红黑树,散列表。本章主要介绍这三种重要的数据结构。 一、符号表(字典) 符号表是一种存储键值对的数据结构,主要支持两种操作,插入(put)即将一组新的键值对存入符号表,查找(get)根据给定的键找到相应的值。 API 二、二叉查找树 二叉查找树(BST)就是一颗二叉树,其中每个节点都包含一个键(实现Compa...
阅读全文