分析java dump文件
注意,请不要被我误导,我没有看其他资料,这是我自己分析的,有些可能是不对的
"DestroyJavaVM" prio=6 tid=0x00316800 nid=0x448 waiting on condition [0x00000000
..0x00a0fd4c]
java.lang.Thread.State: RUNNABLE
"Thread-1" prio=6 tid=0x02f85000 nid=0xd18 waiting for monitor entry [0x0319f000
..0x0319fd14]
java.lang.Thread.State: BLOCKED (on object monitor)
at xunlei.kkk.f2(TestLock.java:20)
- waiting to lock <0x22ad0160> (a java.lang.Object)//在“入口区”等待获取<0x22ad0160>
- locked <0x22ad0158> (a java.lang.Object)//获得了监视器<0x22ad0158>
at xunlei.TestLock$2.run(TestLock.java:42)
"Thread-0" prio=6 tid=0x02bff400 nid=0xd40 waiting for monitor entry [0x02f4f000
..0x02f4fd94]
java.lang.Thread.State: BLOCKED (on object monitor)
at xunlei.kkk.f1(TestLock.java:9)
- waiting to lock <0x22ad0158> (a java.lang.Object) 在“入口区”等待获取<0x22ad0158>
- locked <0x22ad0160> (a java.lang.Object) //获得了监视器<0x22ad0160>
at xunlei.TestLock$1.run(TestLock.java:35)
"A2" prio=6 tid=0x02c01400 nid=0xb0c in Object.wait() [0x02fef000..0x02fefa94]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x22a15d48> (a java.lang.Object)//在“等待区”等待获取<0x22a15d48>
at java.lang.Object.wait(Object.java:485)
at xunlei.OutputName.ru
相关文档:
先来了解一下链表模式的原理:
首先写一个JavaBean,内容是要添加的元素和该元素的节点。
public class NodeBean implements Serializable
{
private Object data; //元素本身
private NodeBean next; //下一个节点
&n ......
javac是编译,Java是执行。javac后面的名字要有.java。java后面直接跟名字,没有后缀名。
必须先到文件的路径下再进行编译执行。
注意文件里是否使用了包,如package lee;
如果使用了的话,必须加上包的名字,如 javac lee.LocaleList.java
java lee.LocaleList
如果需要传递参数,则只需在java xxx 后边跟上就行了。 ......
学习了几周,玩得很开心。
学习java的第一件事就是做一个程序生成Huffman编码。
在这里我学会了LinkedList的使用,它可以保存任何类型的对象。
如下是我的编码结构体
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package HuffmanTree;
......
windows xp下配置JDK环境变量:
1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08;
2.安装完成后,右击“我的电脑”,点击“属性”;
3.选择“高级”选项卡,点击“环境变量”;
&nb ......