默认情况下,当app被按home键退出后,app仅有最多5秒钟的时候做一些保存或清理资源的工作。但是应用可以调用UIApplication的beginBackgroundTaskWithExpirationHandler方法,让app最多有10分钟的时间在后台运行。这个时间可以用来做清理本地缓存,发...
分类:
移动开发 时间:
2014-11-19 18:08:34
阅读次数:
157
Runtime#addShutDownHook方法是给虚拟机增加一个虚拟机关闭时的调用钩子,在虚拟机关闭的时候调用这些钩子线程。还是非常有用的一个方法,最直接的用法就是监控了,因为其是在虚拟机临关闭时被调用,所以天生可以记录虚拟机关闭这件事情,及其相关的信息;再就是清理资源什么的,也可以做一个钩子线程,这样就不用再应用中为这些清理资源的操作找合适的位置了;
下面先翻译一下这个方法的Java do...
分类:
编程语言 时间:
2014-11-08 12:05:12
阅读次数:
193
signal(SIGCHLD, SIG_IGN)和signal(SIGPIPE, SIG_IGN);signal(SIGCHLD, SIG_IGN);因为并发服务器常常fork很多子进程,子进程终结之后需要服务器进程去wait清理资源。如果将此信号的处理方式设为忽略,可让内核把僵尸子进程转交给in....
分类:
其他好文 时间:
2014-10-24 18:24:50
阅读次数:
176
第一章 异常处理
1.5清理
1.5.1 资源管理
如果一个对象的构造函数在执行过程中抛出异常,那么这个对象的析构函数就不会被调用。
Rawp.cpp
/**
* 书本:【ThinkingInC++】
* 功能:资源管理
* 时间:2014年10月8日20:19:03
* 作者:cutter_point
*/
#include
#include
using namespace s...
分类:
编程语言 时间:
2014-10-09 15:38:08
阅读次数:
235
在一个Web App中,所有数据,包括用户信息、发布的日志、评论等,都存储在数据库中。在awesome-python-app中,我们选择MySQL作为数据库。Web App里面有很多地方都要访问数据库。访问数据库需要创建数据库连接、游标对象,然后执行SQL语句,最后处理异常,清理资源。这些访问数据库...
分类:
数据库 时间:
2014-10-06 01:05:09
阅读次数:
349
一、什么是异常处理 异常处理(又称为错误处理)功能提供了处理程序运行时出现的任何意外或异常情况的方法。异常处理使用 try、catch 和 finally 关键字来尝试可能未成功的操作,处理失败,以及在事后清理资源。 异常处理通常是防止未知错误产生所采取的处理措施。异常处理的好处是你不用再绞尽脑.....
分类:
编程语言 时间:
2014-09-15 19:09:29
阅读次数:
306
目录理解垃圾回收平台的基本工作原理垃圾回收算法垃圾回收与调试使用终结操作来释放本地资源对托管资源使用终结操作是什么导致Finalize方法被调用终结操作揭秘Dispose模式:强制对象清理资源使用实现了Dispose模式的类型C#的using语句手动监视和控制对象的生存期对象复活代线程劫持大对象一、...
分类:
其他好文 时间:
2014-06-12 13:52:49
阅读次数:
546
序
僵死(zombie)进程简而言之就是:子进程退出时,父进程并未对其发出的SIGCHILD信号进行适当处理,导致子进程停留在僵死状态等待其父进程为其收尸,这个状态下的子进程就是僵死进程。
因为并发服务器常常fork很多子进程,子进程终结之后需要服务器进程去wait清理资源。对于某些进程,特别是服务器进程往往在请求到来时生成子进程处理请求。如果父进程不等待子进程结束,子进程将成为僵尸进程(zo...
分类:
系统相关 时间:
2014-05-25 06:12:34
阅读次数:
313
使用block的另一个用处是可以让程序在后台较长久的运行。在以前,当app被按home键退出后,app仅有最多5秒钟的时候做一些保存或清理资源的工作。但是应用可以调用UIApplication的beginBackgroundTaskWithExpirationHandler方法,让app最多有10分...
分类:
移动开发 时间:
2014-05-09 19:50:04
阅读次数:
321