社区
C++ 语言
帖子详情
关于release版本的问题
KingKing555
2008-03-22 06:39:09
如何在Release版本(windows或者linux)中查找以下问题,
a 内存泄漏
b 段错误导致非法操作
c 程序CPU占用100%
...全文
119
3
打赏
收藏
关于release版本的问题
如何在Release版本(windows或者linux)中查找以下问题, a 内存泄漏 b 段错误导致非法操作 c 程序CPU占用100%
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
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.死循环!每个循环仔细过一遍。
spring 3.2.4官网jar包
这是我从官网上下载的最新jar包,分享给大家!
Qt自定义专属QQ聊天程序例程
Qt自定义专属QQ聊天程序例程 内含debug,
release
两个
版本
,本地无Qt库也可以运行体验。
debug
版本
和
release
版本
的区别
14:
release
版本
就把arr[]内存地址 放在了i的下面 这样就不会出现越界访问i地址了 这就是
release
版本
的自动优化的其中一点 无论arr[]在怎么越界 也不会碰触到i的内存地址了。12:debug
版本
在越界访问局部变量时就容易...
快照
版本
SNAPSHOT和发布
版本
RELEASE
区别
虽然
RELEASE
版本
是稳定不变的,但是仓库还是有策略让这个原则变得可配置,有的仓库会配置成redeploy覆盖,这样
RELEASE
版本
就变成SNAPSHOT了,伪装成
RELEASE
的SNAPSHOT,会让
问题
更费解和棘⼿,我⼀般称这类⼈为“挖...
Qt 打包:
Release
版本
Qt 打包:
Release
版本
(打包为一个exe绿色文件)Qt 打包:
Release
版本
(打包为一个exe绿色文件)1.
release
版本
编译2.新建一个空文件夹,复制
release
文件夹下面的.exe可执行文件放过去。3.添加静态库.lib4.添加动态...
C++ 语言
64,637
社区成员
250,559
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章