C#的垃圾回收器采用分代机制,这是基于弱代假设的理论设计的。
分代机制的结构
三个代别
- Gen 0(第0代):新创建的对象
- Gen 1(第1代):经历过一次GC存活的对象
- Gen 2(第2代):经历过多次GC存活的对象
弱代假设的核心原理
1. 大多数对象生命周期很短
// 示例:大量临时对象
void ProcessData()
{
for(int i = 0; i < 10000; i++)
{
var temp = new DataObject(); // 大多数在循环结束后就死亡
// 使用temp...
}
}
2. 存活越久的对象,继续存活的可能性越大
class GlobalCache
{
private static List<object> _cache = new List<object>();

最低0.47元/天 解锁文章
1204

被折叠的 条评论
为什么被折叠?



