社区
C++ 语言
帖子详情
关于release版本的问题
KingKing555
2008-03-22 06:39:09
如何在Release版本(windows或者linux)中查找以下问题,
a 内存泄漏
b 段错误导致非法操作
c 程序CPU占用100%
...全文
111
3
打赏
收藏
关于release版本的问题
如何在Release版本(windows或者linux)中查找以下问题, a 内存泄漏 b 段错误导致非法操作 c 程序CPU占用100%
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
KingKing555
2008-03-22
打赏
举报
回复
还有一个问题:
就是在一个多线程高度并发的应用系统中访问关键资源时(如公共缓冲区)过多的使用锁会导致性能下降,请问有什么办法可以减少或者避免锁的使用呢?
希望大家来讨论讨论
arong1234
2008-03-22
打赏
举报
回复
a在debug和release版本都没有好办法查,需要得是经验和耐心
b,c需要使用诸如windbg(windows)gdb之类的调试工具。只要有符号文件(pdb文件),就可以自动解析出出问题的代码。不过windbg的使用还是蛮难的,没一两年的经验估计也搞不定,还得有高人指点
总之调试都不容易,不会有1,2,3,4...这样简单易行的步骤的
野男孩
2008-03-22
打赏
举报
回复
windows:
a.查内存泄漏可以借助于debug版运行库的内存调试函数。Release的话,如果内存泄漏的严重,那挺好的。等到内存占用到1.4G,1.5G以上了,在代码里面随机的dump一段内存出来分析数据。或者另外起一个程序去读内存泄漏进程的内存块。随即的抽取一些内存就行了。因为1.5G内存的泄漏,说明大部分内存里面的数据都是你泄漏的对象占用了。好好分析分析数据。
b.段错误应该就是windows下的内存访问违例。重新编译程序,编译项加上map文件生成选项。根据内存访问的错误地址定位出错代码行。有些错误是没法这么弄的,比如堆栈中的返回地址被破坏,比较难查。需要经验+运气。
c.死循环!每个循环仔细过一遍。
相关推荐
Git实战体验
对
版本
管理工具git进行一个讲解,在讲解过程中顺便对基本的
问题
进行解析,同时完成git的体验
DEBUG和
RELEASE
版本
差异及调试相关
问题
[转]DEBUG和
RELEASE
版本
差异及调试相关
问题
Debug和
Release
有什么区别?怎么把Debug转成
Release
? 1。Debug和
Release
有什么区别,为什么要使用
Release
版本
! 2。怎么把Debug转成
Release
转载: Debug
版本
包括调试信息,所以要比
Release
版本
大很多(可能大数百K至数M)。至于是否需要DLL支持,主要看你采用的编译选项。如果是基于ATL的,则Debug和
Release
版本
对DLL的要求差不多。如果采用的编译选项为使用MFC动态库,则需要MF
C++ Debug
版本
和
Release
版本
产生的乱码
问题
读取文件时Debug
版本
和
Release
版本
产生的乱码
问题
Debug与
Release
版本
的区别
转自:http://blog.csdn.net/suxinpingtao51/article/details/17378917 由于最近搞了个项目,在Dedug
版本
下正常,但
Release
版本
就有
问题
,看样子还是debug
版本
和
release
版本
的区别没有搞清楚。 有遇到下面3个
问题
: 1、Debug
版本
下程序可以正常运行退出,而给QA的
Release
版本
则不能正常的运行退出,调
解决VS+opencv中Debug
版本
与
Release
版本
lib切换的
问题
解决VS+opencv中Debug
版本
与
Release
版本
lib切换的
问题
C++ 语言
63,579
社区成员
250,388
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下