社区
C++ 语言
帖子详情
有什么办法可以尽量避免内存泄漏吗?
lazity
2006-07-11 06:12:44
re
...全文
182
16
打赏
收藏
有什么办法可以尽量避免内存泄漏吗?
re
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tianxiaogang12
2006-07-12
打赏
举报
回复
注意使用auto_ptr还是可以的
bing_huo
2006-07-12
打赏
举报
回复
尽量避免使用c库的一些不安全函数 比如strcpy 之类的东西
尽量避免使用基本数组 包括char数组 要使用stl容器来实现同样的功能
自己做内存管理的时候 注意异常安全 注意new和delete的用法 可以参考effective C++
使用系统相关api(比如win32api)的时候 注意严格遵守调用约定
另外 最重要的一点是要做好软件的结构设计
healer_kx
2006-07-12
打赏
举报
回复
封装,把new东西的玩意都封装起来,便于管理,释放的时候自然容易了。
lddLinan
2006-07-12
打赏
举报
回复
又有人在吹牛了
ddstudent
2006-07-12
打赏
举报
回复
在申请內存时, 同时写上释放的代码, 再把释放的代码放到合適的地方
sinall
2006-07-12
打赏
举报
回复
智能指针。
WingForce
2006-07-12
打赏
举报
回复
可以自己做回收机制,比如定时回收
每次申请了一个资源,就保存下该资源相关信息,然后以某个给定的时间间隔对该资源进行分析,
当分析出该资源实际上已经不再被使用的时候,就可以进行回收了
pottichu
2006-07-11
打赏
举报
回复
TO: Veiz(理论上存在)
boost 中的 shared_ptr 这类引用记数智能指针非常好用。
auto_ptr 是个失败的设计,也不能用于STL,很少见到有用他的。
Jedimaster
2006-07-11
打赏
举报
回复
智能指针啊
cunsh
2006-07-11
打赏
举报
回复
auto_ptr很糟糕. 用boost的几个智能指针吧.
Veiz
2006-07-11
打赏
举报
回复
auto_ptr不是在任何情况下都能用
pottichu
2006-07-11
打赏
举报
回复
智能指针。
lucky520
2006-07-11
打赏
举报
回复
记得delete new 成对的出现
chenhu_doc
2006-07-11
打赏
举报
回复
少用new ... 呵呵
----
对于gogowhy(123) 提出的观点不大可取。即使说用vector代替数组等等
chenhu_doc
2006-07-11
打赏
举报
回复
习惯, 用了new,就一定记住不用该段内存的时候及时释放。。
gogowhy
2006-07-11
打赏
举报
回复
少用new ... 呵呵
Handler对象中使用匿名内部类或非静态内部类正确地释放消息避免
内存泄漏
或增加Native内存
Handler对象中使用匿名内部类或非静态内部类正确地释放消息避免
内存泄漏
或增加Native内存,在Android中,Handler对象通常会被用来在主线程(UI线程)中处理消息,以更新UI界面。当我们在Handler对象中使用匿名内部类或非静态内部类时,如果没有正确地释放消息,就可能会导致
内存泄漏
或增加Native内存。 解决这个问题的方法有两种: 减少notifyItemChanged的调用次数,尽量在数据变化后一次性更新多个item,而不是频繁地更新单个item。 使用DiffUtil来计算RecyclerView中item数据的变化,然后批量更新变化的item。DiffUtil可以有效地减少notifyItemChanged的调用次数,从而降低内存的使用。 RecyclerView重新绘制前清除之前绘制产生的Native内存:
JS常见
内存泄漏
及解决方案解析
内存泄漏
? 官方解释:
内存泄漏
(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。 通俗点就是指由于疏忽或者错误造成程序未能释放已经不再使用的内存,不再用到的内存却没有及时释放,从而造成内存上的浪费。 避免
内存泄漏
? 在局部作用域中,等函数执行完毕,变量就没有存在的必要了,垃圾回收机制很亏地做出判断并且回收,但是对于全局变量,很难判断什么时候不用这些变量,无法正常回收;所以,尽量少使用全局变量。在使用闭包的时候,就会造成严重的
内存泄漏
,因为闭包中的局部变量,会一直保存在内存中。 内存溢出?
C++第3课:C++内存泄露检测原理及案例实战
本课程具体的内容主要包括C++内存泄露案例、VS2015内存泄露检测、野指针、VirtualAlloc/HeapAlloc/malloc/new的区别、C++堆和栈的内存管理、栈简介、堆简介、堆与栈区别、栈的内存分配、Windows的虚拟内存技术、...
Android编程中避免内存泄露的方法总结
Android的应用被限制为最多占用16m的内存,至少在T-Mobile G1上是这样的(当然现在已经有几百兆的内存可以用了——译者注)。它包括电话本身占用的和开发者可以使用的两部分。即使你没有占用全部内存的打算,你也应该尽量少的使用内存,以免别的应用在运行的时候关闭你的应用。Android能在内存中保持的应用越多,用户在切换应用的时候就越快。作为我的一项工作,我仔细研究了Android应用的内存泄露问题,大多数情况下它们是由同一个错误引起的,那就是对一个上下文(Context)保持了长时间的引用。 在Android中,上下文(Context)被用作很多操作中,但是大部分是载入和访问资源。这就
5个Android开发中比较常见的
内存泄漏
问题及解决
办法
android中一个对象已经不需要了,但是其他对象还持有他的引用,导致他不能回收,导致这个对象暂存在内存中,这样
内存泄漏
就出现了。
内存泄漏
出现多了,会是应用占用过多的没存,当占用的内存超过了系统分配的内存容量,就会出现内存溢出了导致应用Crash. 了解了
内存泄漏
的原因及影响后,我们需要做的就是掌握常见的
内存泄漏
,并在以后的Android程序开发中,
尽量避免
它。下面搜罗了5个Android开发中比较常见的
内存泄漏
问题及解决
办法
,分享给大家,一起来看看吧。 一、单例造成的
内存泄漏
android的单列大家都喜欢使用。但单例模式的静态特征使得他的生命周期和应用的生命周期一样长,这就说明了一
C++ 语言
64,282
社区成员
250,470
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章