在程序结束时,
1.在响应WM_CLOSE消息的函数中先主动的释放所有的资源后,然后按MFC的正常消息流程结束程序;我称之为温和结束程序。。
2.在关闭程序时,什么都不做,在响应WM_CLOSE消息的函数中直接给程序发送WM_QUIT消息结束程序,程序中的资源让OS自动回收;我称之为暴力结束程序。。我想问一下他们之间有什么区别???对程序有什么影响???
都是结束程序,那么2是否来得更直接一些????
1.在响应WM_CLOSE消息的函数中先主动的释放所有的资源后,然后按MFC的正常消息流程结束程序;我称之为温和结束程序。。
2.在关闭程序时,什么都不做,在响应WM_CLOSE消息的函数中直接给程序发送WM_QUIT消息结束程序,程序中的资源让OS自动回收;我称之为暴力结束程序。。我想问一下他们之间有什么区别???对程序有什么影响???
都是结束程序,那么2是否来得更直接一些????
如果不涉及到数据的保存,这种方法应该问题不大
没错,进程退出时系统会清理的非常干净的,这个大可以放心,包括所有相关内核对象的引用计数也会做递减,且进程所使用的全部内存都会整体unmap掉的,可以参见linux的源码
在程序中创建的指针,就是new出来的,当程序退出时,没有做删除动作,系统也会自动释放吗?
进程的自杀(调用某些API):不能释放局部非静态变量.
暴力结束(abort);他杀(被其他进程杀死):不能销毁任何对象.