当前位置:  技术问答>linux和unix

Ctrl+C中断时,如何保证内存释放?

    来源: 互联网  发布时间:2017-04-11

    本文导语:  本帖最后由 nameofhsw 于 2013-05-15 09:36:39 编辑 如果程序运行中,被人为使用Ctrl+C关闭,我看了下,应该没有走到析构函数,那么,怎么保证程序new的内存能够在异常退出的情况下被delete呢? 另外,在其他地方看到这么...

本帖最后由 nameofhsw 于 2013-05-15 09:36:39 编辑
如果程序运行中,被人为使用Ctrl+C关闭,我看了下,应该没有走到析构函数,那么,怎么保证程序new的内存能够在异常退出的情况下被delete呢?
另外,在其他地方看到这么一段话:
linux系统内存管理的特点
linux的进程结束后,它占用的资源全部释放,但是内存仅仅是设置了标志,标志了这部分内存已经不再使用,可以被重新分配的。
当进程需要内存时,linux系统首先从空闲内存中查找分配,空闲内存不足时就会使用不再使用的内存;另外,如果你的程序又一次运行,系统直接使用内存中的数据,不再从文件系统读组,提高了效率。这样一来,linux的系统使用律会很高,服务器的在98%以上;这样做的目的是:linux认为内存是最宝贵的资源,充分利用,不能让他空闲。 
这是不是表示,可以不用管了?

|
要管啊,红色的字是操作系统的优化,那个是对已经释放的内存快的优化,你没释放,那快内存是不能在用的。
你可以注册ctrl+c信号,然后在注册函数里面delete,就可以了

|
程序都结束,剩下的工作就交给操作系统吧。。。人家比你更专业。


另外,如果你的程序又一次运行,系统直接使用内存中的数据,不再从文件系统读组,提高了效率


这段话你是在哪里看到的?

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.awt.event类inputevent的类成员方法: ctrl_mask定义及介绍
  • 请教:ctrl+C与ctrl+D的区别在什么地方?
  • java命名空间java.awt.event类actionevent的类成员方法: ctrl_mask定义及介绍
  • Ctrl键的ascii码值是多少,哪位知道?Ctrl+c键如何得到.
  • java命名空间java.awt类event的类成员方法: ctrl_mask定义及介绍
  • LINUX里面,ctrl+d,ctrl+z 效果是一样吗? 有何区别?
  • java命名空间java.awt.event类inputevent的类成员方法: ctrl_down_mask定义及介绍
  • linux 中 ctrl+c 和 ctrl+v 怎么写?
  • 如何制作像编辑器里那样CTRL+Z和CTRL+Y那样的后退前进功能
  • 用VMWARE刚装完fedora后,找不到ibus输入法,用快捷键shift+ctrl或ctrl+空格也找不到输入法
  • 怎么让程序捕获Ctrl+D?
  • 输入法该如何切换?ctrl+space?
  • 在Linux控制台中,Ctrl+S代表什么?如何禁止它?
  • 再linux 7.0的vi中ctrl+s是什么意思?怎么解琐?
  • 请教::linux有没有命令可以做Ctrl+Z??
  • linux下的Ctrl+C信号值是多少
  • 我正在做一个Linux下基于ncurses库的文本编辑器,想知道如何取得Ctrl键,请高手指点,谢谢!
  • 在SecureCRT 下我的Ctrl + C 被屏蔽了,怎样恢复
  • 如何判断,回车和ctrl键同时被按下的事件
  • 我怎么在Ctrl+c前执行一段自己的代码
  • 程序运行一段时间之后,就不能响应CTRL + C键了!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,