完美者(wmzhe.com)网站以软件下载为基础,改版后的网站对功能性板块进行扩充,以期能够解决用户在软件使用过程中遇见的所有问题。网站新增了“软件百科”、“锦囊妙技”等频道,可以更好地对用户的软件使用全周期进行更加专业地服务。
Object Monitor是个实用的文件、文件夹和注册表监视软件。它支持CRC、MD5、SHA1等多种算法,用户可以指定任何文件、文件夹或注册表键值,为其建立监视清单,还可以导出为HTML/XML。当下次使用时,如果有未通过校验的文件或注册表键值,软件会注释“not passed”,说明它们已经发生变化,需要用户注意。"锦囊妙技"栏目是聚合全网软件使用的技巧或者软件使用过程中各种问题的解答类文章,栏目设立伊始,小编欢迎各路软件大神朋友们踊跃投稿,在完美者平台分享大家的独门技巧。
本站文章素材来源于网络,大部分文章作者名称佚失,为了更利于用户阅读和使用,根据需要进行了重新排版和部分改编,本站收录文章只是以帮助用户解决实际问题为目的,如有版权问题请联系小编修改或删除,谢谢合作。
软件大小:2.05 MB
系统崩溃保护器, 安装McAfee 软件捆绑的,不经过ROOT无法卸载,这个进程是为了保护其他程序崩溃用的, 可以禁止启动或者删掉,作用不大,占资源费电费流量。
如果单靠通过查看代码是很难去发现这个问题,在这一次故障排查中,我也学到了怎样更好的使用jvm监控工具来进行诊断,主要用到了jstack和jmap命令,jmap上次已经讲过就不再讲了,下面就一个例子来讲怎么使用jstack来对的Java程序进行诊断。 首先让我们来了解一下jstack这个命令的作用,jstack 是一个可以返回在应用程序上运行的各种各样线程的一个完整转储的实用程序,您可以使用它查明问题。jstack [-l] ,jpid可以通过使用jps命令来查看当前Java程序的jpid值,-l是可选参数,它可以显示线程阻塞/死锁情况。 /** * 死锁例子 * @author crane.ding * @since 2011-3-20 */ public class DeadLock { public static void main(String[] args) { final Object obj_1 = new Object(), obj_2 = new Object(); Thread t1 = new Thread("t1"){ @Override public void run() { synchronized (obj_1) { try { Thread.sleep(3000); } catch (InterruptedException e) {} synchronized (obj_2) { System.out.println("thread t1 done."); } } } }; Thread t2 = new Thread("t2"){ @Override public void run() { synchronized (obj_2) { try { Thread.sleep(3000); } catch (InterruptedException e) {} synchronized (obj_1) { System.out.println("thread t2 done."); } } } }; t1.start(); t2.start(); } } 以上DeadLock类是一个死锁的例子,假使在我们不知情的情况下,运行DeadLock后,发现等了N久都没有在屏幕打印线程完成信息。这个时候我们就可以使用jps查看该程序的jpid值和使用jstack来生产堆栈结果问题。 $ java -cp deadlock.jar DeadLock & $ $ jps 3076 Jps 448 DeadLock $ jstack -l 448 > deadlock.jstack 结果文件deadlock.jstack内容如下: 2011-03-20 23:05:20 Full thread dump Java HotSpot(TM) Client VM (19.1-b02 mixed mode, sharing): "DestroyJavaVM" prio=6 tid=0x00316800 nid=0x9fc waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "t2" prio=6 tid=0x02bcf000 nid=0xc70 waiting for monitor entry [0x02f6f000] java.lang.Thread.State: BLOCKED (on object monitor) at com.demo.DeadLock$2.run(DeadLock.java:40) - waiting to lock <0x22a297a8> (a java.lang.Object) - locked <0x22a297b0> (a java.lang.Object) Locked ownable synchronizers: - None "t1" prio=6 tid=0x02bce400 nid=0xba0 waiting for monitor entry [0x02f1f000] java.lang.Thread.State: BLOCKED (on object monitor) at com.demo.DeadLock$1.run(DeadLock.java:25) - waiting to lock <0x22a297b0> (a java.lang.Object) - locked <0x22a297a8> (a java.lang.Object) Locked ownable synchronizers: - None "Low Memory Detector" daemon prio=6 tid=0x02bb9400 nid=0xa6c runnable [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "CompilerThread0" daemon prio=10 tid=0x02bb2800 nid=0xcb8 waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "Attach Listener" daemon prio=10 tid=0x02bb1000 nid=0x7f4 waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "Signal Dispatcher" daemon prio=10 tid=0x02bd2800 nid=0xd80 runnable [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "Finalizer" daemon prio=8 tid=0x02bab000 nid=0xe1c in Object.wait() [0x02d3f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x229e1148> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118) - locked <0x229e1148> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159) Locked ownable synchronizers: - None "Reference Handler" daemon prio=10 tid=0x02ba6800 nid=0xbe0 in Object.wait() [0x02cef000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x229e1048> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:485) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116) - locked <0x229e1048> (a java.lang.ref.Reference$Lock) Locked ownable synchronizers: - None "VM Thread" prio=10 tid=0x02b6a400 nid=0x568 runnable "VM Periodic Task Thread" prio=10 tid=0x02bc8400 nid=0x75c waiting on condition JNI global references: 878 Found one Java-level deadlock: ============================= "t2": waiting to lock monitor 0x02baaeec (object 0x22a297a8, a java.lang.Object), which is held by "t1" "t1": waiting to lock monitor 0x02baa2bc (object 0x22a297b0, a java.lang.Object), which is held by "t2" Java stack information for the threads listed above: =================================================== "t2": at com.demo.DeadLock$2.run(DeadLock.java:40) - waiting to lock <0x22a297a8> (a java.lang.Object) - locked <0x22a297b0> (a java.lang.Object) "t1": at com.demo.DeadLock$1.run(DeadLock.java:25) - waiting to lock <0x22a297b0> (a java.lang.Object) - locked <0x22a297a8> (a java.lang.Object) Found 1 deadlock. 从这个结果文件我们一看到发现了一个死锁,具体是线程t2在等待线程t1,而线程t1在等待线程t2造成的,同时也记录了线程的堆栈和代码行数,通过这个堆栈和行数我们就可以去检查对应的代码块,从而发现问题和解决问题。
把引导文件放在了U盘里,并且改写啦盘符路径。 先进放到系统里面.然后对准我的电脑点右键--->属性--->高级----->选择第3项(启动和故障恢复)---->设置--->在要手动编辑那点把这段话粘贴进去: [boot loader] timeout=3 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=AlwaysOff 然后保存.确定..确定点完确定后重新启动 如果这种方法用啦还是不行的话那你就重新装一下系统
HIFI级。这个我以前用过。用来监听还是不错的。有一点点的漏音但是不明显。这个网上有假货。注意甄别。