背景 内存泄露是咱新手比较头痛的问题,因为它不像崩溃,在开发环境可以根据提示的错误信息排查问题. 你都不知道咱的app是否哪个犄角旮旯藏着一个吞噬内存的黑洞. 排查android 内存泄露比较底层高端的做法:使用官方的内存分析工具(MAT), 比较好的两篇入门文章:(一) 和 (二) 然而这个过程比较考验耐心, 咱新手也可以选择另外一款App的插件leakcanary,集成了这个插件,我们在使用app的时候,遇到内存泄露点,它就会弹出通知,并告知泄漏点(release下不会弹框). 实战 咱们就…
通过查看php日志/usr/local/php/var/log/php-fpm.log,有如下警告信息: [16-Mar-2015 16:03:09] WARNING: [pool www] child 9453 exited on signal 11 (SIGSEGV) after 9.601040 seconds from start 日志中的信息表明,进程号为9453的进程由于收到SIGSEGV信号而退出了.收到这个信号的时候,程序是可以生成core文件的.不过通过日志我们可以知道进程94…
找出程序GasMileage中的哪一行与下列叙述相对应: a.通知程序将使用Scanner类   import java.util.Scannner; b.创建一个Scanner类的对象   Scanner scan = new Scanner(System.in); c.创建一个Scanner类的对象 scan,用来从标准输入流读取数据    Scanner scan = new Scanner(System.in); d.从标准输入流读取一个整型数据    miles = scan.next…
原文地址: http://www.cnblogs.com/Lawson/archive/2011/01/23/1942692.html 很早看到windbg+sos方面的知识,一直没仔细学习,也许因为自己做的系统还不够复杂,也没线上真实环境查看的权限,一直没学习这方面的知识,最近几天仔细找了这方面的资料,自己也写了个可能造成高CPU高内存的测试web页面,发现确实不错,即使一个生手,也可以用工具连蒙带骗的猜出哪里出了问题,当然对一些命令和内部标示更熟悉了后,可以更好的找出问题所在,非常值得学习.…
确定是CPU过高 使用top观察是否存在CPU使用率过高现象 找出线程 对CPU使用率过高的进程的所有线程进行排序 ps H -e -o pid,tid,pcpu,cmd --sort=pcpu |grep xxx得到如下结果,其中线程2909使用了7.8%的CPU. 2907 2913 0.0 ./xxx 2907 2909 7.8 ./xxx也可以通过查看/proc中的信息来确定高CPU线程. 打印了4列,线程ID,线程名,用户时间和内核时间(排名未分先后) awk '{print $1,$…
之前碰到论坛里有几个好友,说程序不时的崩溃,什么xxoo不能read的! 如果光要是这个内存地址,估计你会疯掉~~ 所以分享一下基本的调试技巧,需要准备的工具有WinDbg + VC6.0, 下面是自己整理的一份自动生成DUMP文件的源代码,只需要添加到工程即可,源代码如下: MiniDump.hMiniDump.cpp <具体请参考附件SRC中,太大就不贴了> 1.在CXXDlg::OnInitDialog()中添加这样一段: BOOL CTestDlg::OnInitDialog() {…
Linux下查询进程占用的内存方法总结,假设现在有一个「php-cgi」的进程 ,进程id为「25282」. 现在想要查询该进程占用的内存大小.linux命令行下有很多的工具进行查看,现总结常见的几种方式. 查看某一进程使用的内存 通过进程的 status [root@web3_u ~]# cat /proc/25282/status Name: php-cgi State: S (sleeping) Tgid: 25282 Pid: 25282 PPid: 27187 TracerPid: 0…
一.使用ps命令 ps -aux | sort -k4nr | head -N *命令详解: 1. head:-N可以指定显示的行数,默认显示10行. 2. ps:参数a指代all——所有的进程,u指代userid——执行该进程的用户id,x指代显示所有程序,不以终端机来区分.ps -aux的输出格式如下: 3. sort -k4nr中(k代表从根据哪一个关键词排序,后面的数字4表示按照第四列排序:n指代numberic sort,根据其数值排序:r指代reverse,这里是指反向比较结果,输出…
顶部Analyze菜单中选择Run Inspection by Name 在弹出的输入框中输入unused resources…
假设整数为32bit,4个字节存储 这种题目,首先想到的是分而治之.将文件中数字分组.然后遍历文件中的数字,按分组进行计数.最后找到中位数所在的分组区间 1.如果10G个整数都为同一个,那么10G整数会分布在一个区间,10G=5*2^31 > 2^31 - 1,所以每个分组存储计数的整数用64bit存储. 2.那么2G内存能够存储多少个64bit整数范围呢?2*2^30/8 = 256M 个范围区间. 3.那么每个区间的存储整数的范围长度是多少? 2^32 /256M = 16 4.所以整数区间…