Rare .Net8 Technique: Handling Fixed Objects
原文英文,约400词,阅读约需2分钟。发表于: 。1.前言固定对象是.Net里面的一个特殊对象,它主要是对于GC堆上的对象进行固定操作,以防止误回收。这是在.Net7之前,在.Net8里面它直接把固定对象分配到GC堆的外面,这样GC无论如何也不会误回收。可见思路是进步了不少,注意这里跟unsafe的fixed固定是不同的,本篇来看下。2.概述一:例子先上一段简单代码static void Main(string[] args) { strin...
.Net中的固定对象可以防止GC误回收对象,分配到GC堆外更加安全。CLR处理固定对象的句柄,验证其范围确实在GC堆外。字符串实例可能在没有固定句柄的情况下被判断为在GC堆内。