瞬时(transient):数据库中没有数据与之对应,超过作用域会被JVM垃圾回收器回收,一般是new出来且与session没有关联的对象。 持久(persistent):数据库中有数据与之对应,当前与session有关联,并且相关联的session没有关闭,事务没有提交; 持久对象状态发生改变,在 ...
分类:
Web程序 时间:
2016-10-26 16:37:27
阅读次数:
185
在C#中,程序员无法直接在C#中删除一个托管对象,因为C#不提供这个功能,那么类的实例就需要通过CLR调用垃圾回收机制进行清除,回收内存。.NET垃圾回收器会压缩空的内存块来实现优化,为了辅助这一功能,托管堆会保存一个指针,它指向下一个对象将被分配的位置。那么CLR是如何使用垃圾回收机制呢?首先,类 ...
最近阅读了《垃圾回收算法手册》这本经典的书籍,借此机会打算写几篇内存管理算法方面的文章,也算是自己的总结吧。 ... ...
分类:
编程语言 时间:
2016-10-24 23:45:50
阅读次数:
205
<1>为什么要使用指针? 一是向后兼容性:c#非常擅长对开发人员隐藏大部分基本内存管理,因为它使用了垃圾回收器和引用,但是有时需要直接访问内存,例如由于性能问题,需要在外部(非.net环境)的DLL中访问一个函数,该函数需要把指针当作参数来传递(许多windows API函数就是这个样子);二是性能 ...
1.java的gc垃圾回收,不能够被java的代码进行干预。system下的gc()方法的准确的说法为:请求运行java垃圾回收器,并不一定能够得到相应。 2.技术方向:1.性能调优 (tomcat) 2.故障诊断(死锁问题) 3.申明包结构: 包分为包头和包体,相当于C语言当中的.h和.cpp 文 ...
分类:
其他好文 时间:
2016-10-23 02:17:38
阅读次数:
281
* 弱散列映射表(WeakHashMap) * 如果有一个值,对应的键已经不再使用了,将会出现什么情况呢 * 假定对某个键的而最后一次引用已经消亡,不再有任何途径引用这个值对象了,但是由于程序中任何 * 部分没有再引用这个键,所以这个键/值无法从Map中删除。 * 遗憾的是,垃圾回收器跟踪活动的对象 ...
分类:
编程语言 时间:
2016-10-22 14:17:27
阅读次数:
229
System类 System类:一些有用的类字段和方法,System类不能被实例化。 成员方法: (1)public static void gc():运行垃圾回收器(这只做了解) 注意:执行System.gc()前,系统会自动调用finalize()方法清除对象占有的资源,通过super.fina ...
分类:
其他好文 时间:
2016-10-16 00:57:57
阅读次数:
168
System类 System类包含:一些有用的类字段和方法,System类不能被实例化。 成员方法: (1)public static void gc():运行垃圾回收器(这只做了解) 注意:执行System.gc()前,系统会自动调用finalize()方法清除对象占有的资源,通过super.fi ...
分类:
其他好文 时间:
2016-10-14 23:41:00
阅读次数:
120
1.System类概述System类包含一些有用的类字段和方法。它不能被实例化。2.成员方法publicstaticvoidgc()运行垃圾回收器publicstaticvoidexit(intstatus)终止当前正在运行的java虚拟机publicstaticlongcurrentTimeMillis()返回毫秒单位的当前时间publicstaticvoidarraycopy(Objec..
分类:
编程语言 时间:
2016-10-11 22:11:08
阅读次数:
172
C#中IDisposable接口的主要用途是释放非托管资源。当不再使用托管对象时,垃圾回收器会自动释放分配给该对象的内存。但无法预测进行垃圾回收的时间。另外,垃圾回收器对窗口句柄或打开的文件和流等非托管资源一无所知。将此接口的Dispose方法与垃圾回收器一起使用来显式释放非托管资源。当不再需要对象 ...
分类:
其他好文 时间:
2016-09-30 01:34:37
阅读次数:
149