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