文章分类 -  定位调试(debug)

关于C,C++的内存问题的定位
摘要:大部分人觉得C/C++比较难,主要是因为指针的灵活性以及内存的使用,C和C++需要程序员自己来控制内存,自己申请,自己释放,很容易就会出现各种头疼难搞的内存问题从而导致系统core dump,这类问题,除了平时自己写code注意,也要在出现问题的时候懂得借鉴“巨人”为我们提供的定位方法,比如比较好用 阅读全文
posted @ 2019-07-15 21:47 LyndonYoung 阅读(571) 评论(0) 推荐(0)
程序运行占用CPU较高的时候,查看每个线程的CPU使用情况
摘要:1.使用命令 top -H -p pid(程序进程号)查看该进程下所有线程占用CPU情况,做一下排序 2.pstack保存该进程的线程快照,然后根据1中所显示的线程号查看具体线程堆栈信息 阅读全文
posted @ 2017-11-16 10:37 LyndonYoung 阅读(861) 评论(0) 推荐(0)
Linux下的内存泄露检测(1)------定制自己的内存操作组件
摘要:内存泄露是指程序动态申请的内存在使用结束后并没有释放,导致系统无法正常回收。 例如: 在大型系统中,如果发生内存泄露,随着系统长时间的运行,会导致系统性能下降(内存泄露致使可用内存越来越少)甚至崩溃(泄漏量很大,导致所有内存被占满)。 内存泄露问题是比较严重而且比较难定位,基于这个原因,在大型系统中 阅读全文
posted @ 2016-08-24 11:34 LyndonYoung 阅读(179) 评论(0) 推荐(0)
内存泄露,越界,数据竞争检测
摘要:一、内存泄露 1、使用自定义的组件申请释放内存,即定义统一接口例如alloc()和free()以供系统中所有操作内存的地方使用,每次申请内存将调用栈信息以一个结构体形式保存到一个容器里面,每次释放内存将对于的调用栈信息从容器里面删除,这样在程序结束的时候便可以统计内存的使用,若程序正常结束,无内存泄 阅读全文
posted @ 2016-07-25 10:00 LyndonYoung 阅读(1987) 评论(0) 推荐(0)