当windows程序出现异常、界面卡顿、无响应情况时,在有工程和源码的情况下,程序员通常是打开IDE,在DEBUG模式下进行调试。但如果是一个RELEASE程序,且无调试环境,该如何来定位呢。 这里介绍一下通过adplus导出dump文件,用windbg来查看的方法。 windbg 在这之前,先大概 ...
1.首先要先准备好环境,安装lldb 工具 要安装3.9版本的,因为每个版本对应dnc版本不一样,3.9的支持2.2 版本,然后确定分析的机器里dnc 版本和线上的生产环境是否一致,自己安装比较费劲,可以使用一些已经安装好的docker镜像来进行分析更简单一点 2.在生产环境生成dump文件可以使用 ...
分类:
Web程序 时间:
2020-02-28 11:51:05
阅读次数:
153
ext4文件系统,扩容和缩减容量都比较慢,我喜欢用xfs文件系统。但是今天我突然遇到一个坑,就是xfs文件系统的lvm不能用传统方法缩减分区,我是说缩减完会导致superblock错误无法挂载。xfs的lvm缩减空间一定要注意顺序,先yuminstall-yxfsdump第一步umount掉你挂载的这个逻辑卷组,比如/homeumount/home然后xfsdump-f"dump文件存放
分类:
其他好文 时间:
2020-02-18 18:42:11
阅读次数:
175
一、说明 在前一家公司经常测出一些缓冲区溢出导致进程挂掉的问题,开发经常要求在调试模式进行测试,生成core文件给他们定位问题。 当时的调试模式启动只是修改某些配置文件重新启动即可,所以在很长一段时间内并不知道到底要如何生成core文件及core文件如何使用。 二、配置允许生成core文件 临时配置 ...
分类:
系统相关 时间:
2020-02-03 15:28:29
阅读次数:
347
一、dump文件的导出(以sqlplus命令行的方式) 二、dump文件的导入(以sqlplus命令行的方式) 三、常用辅助SQL(慎用) alter user username identified by password; drop user username cascade; drop tab ...
分类:
其他好文 时间:
2020-01-19 12:41:04
阅读次数:
204
原调试debugwindbg死锁deadlock 前言最近我们的程序在退出时会卡住,调查发现是在卸载dll时死锁了。大概流程是这样的:我们的dll在加载的时候会创建一个工作线程,在卸载的时候,会设置退出标志并等待之前开启的工作线程结束。为了研究这个经典的死锁问题,写了一个模拟程序,用到的dump文件... ...
分类:
数据库 时间:
2020-01-06 22:40:03
阅读次数:
135
我刻意的制造了一段会溢出的代码。 通过下图的leak suspects分析是可以看出gc root的。比较代码和图中的b a。 还有其他的方式可以分析,点击dominator tree可以获取到持有大对象的线程,然后在其上也可以执行gcroot的分析,如下图。 ...
分类:
其他好文 时间:
2020-01-06 19:21:34
阅读次数:
206
1.为什么要使用线程池避免频繁地创建和销毁线程,达到线程对象的重用。另外,使用线程池还可以根据项目灵活地控制并发的数目。2.java中如何获取到线程dump文件死循环、死锁、阻塞、页面打开慢等问题,打线程dump是最好的解决问题的途径。所谓线程dump也就是线程堆栈,获取到线程堆栈有两步:1)获取到线程的pid,可以通过使用jps命令,在Linux环境下还可以使用ps-ef|grepjava2)打
分类:
编程语言 时间:
2020-01-05 10:05:51
阅读次数:
95
收集内存溢出Dump文件 收集Dump文件有两种方式: 设置JVM启动参数-XX:+HeapDumpOnOutOfMemoryError-XX:HeapDumpPath=/opt/jvmdump 设置JVM启动参数-XX:+HeapDumpOnOutOfMemoryError-XX:HeapDump ...
分类:
其他好文 时间:
2019-12-25 10:23:59
阅读次数:
111
Thread Dump日志的线程信息 以上依次是: "resin-22129"线程名称:如果使用 java.lang.Thread 类生成一个线程的时候,线程名称为 Thread-(数字) 的形式,这里是resin生成的线程; daemon线程类型:线程分为守护线程 (daemon) 和非守护线程 ...
分类:
其他好文 时间:
2019-11-01 14:42:53
阅读次数:
72