sqlite内存打开应该怎样回收资源
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlite内存打开应该怎样回收资源相关的知识,希望对你有一定的参考价值。
参考技术A SQLite内存数据库__西西软件资讯移动.SQLite也除去了需要大量内存和其它系统资源的... 全局属性,打开数据库连接后创建好表后赋值给这个...追问
我现在的做法是:tomcat启动的时候加载数据,然后就把数据放在缓存,在service中读取数据时,定义了一个全局变量,直接从缓存读取数据,还有没有比这更优化的方法?
C#关于垃圾回收 终结器IDispose的设计规范札记
-
要只为使用了稀缺或昂贵资源的对象实现终结器方法,即使终结器会推迟垃圾回收。 -
要为有终结器的类实现 IDisposable 接口以支持确定性终结。 -
要为实现了 IDisposable 的类实现终结器方法,以防 Dispose () 没有被显示调用。 -
要重构终结器方法来调用与 IDisposable 相同的代码,可能就是调用一下 Dispose () 方法。 -
不要在终结器方法中抛出异常。 -
要从 Dispose() 中调用 System.GC.SuppressFinalize() ,以使垃圾回收更快地发生,以避免重复性的资源清理。 -
要保证 Dispose () 可以重入(可被多次调用)。 -
要保持 Dispose() 的简单性,把重点放在终结所要求的资源清理上。 -
避免为自己拥有的、带终结器的对象调用 Dispose () 。相反,依赖终结队列清理实例。 -
避免在终结方法中引用未被终结的其他对象。 -
要在重写Dispose() 时调用基类的实现。 -
考虑在调用Dispose() 后将对象状态设为不可用。对象被dispose之后,调用除Dispose() 之外的方法应引发ObjectDisposedException 异常。 -
要为含有可dispose 字段(或者属性)的类实现IDisposable接口,并dispose 这些字段引用的对象。
只捕捉能处理的异常
不要隐藏(bury)不能完全处理的异常
尽量少用System.Exception 和常规 catch 块
避免在调用栈较低的位置报告或者记录异常
在catch块中使用throw; 而不是throw<异常对象> 语句
想好异常条件来避免在catch块中重新抛出异常
避免在异常条件表达式中抛出异常】
避免以后可能变化的异常条件表达式
重新抛出不同异常时要小心
值意外为空时不要抛出 NullReferenceException, 而应抛出ArgumentNullException
以上是关于sqlite内存打开应该怎样回收资源的主要内容,如果未能解决你的问题,请参考以下文章