首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

#clr

.NET9异常(CLR)原理(顶阶技术)

江湖评谈

.NET9为了追求性能,把异常模块进行了重写。但异常是CLR里面较大的模块,PreView3(Pre4里面经过了充分测试)里面没有经过充分测试,如果Pre3的程...

6310

.NET9 Pre3 CLR的优化细节

江湖评谈

上一篇:.NET9 Pre3 CLR的改进,讲了下.NET9 Pre3的CLR改进,第二个改进点即是内联。本篇详细看下,略有繁芜。

4710

.NET9 Pre3 CLR的改进

江湖评谈

异常处理作为一个较为重要的CLR模块,在此次PreView3的改进中。微软重写了异常处理模块。这些模块的指令和平台包括了x64/arm64以及win/linux...

8610

.NET9 CLR运行在安卓手机+BSD

江湖评谈

.NET9 CLR在Linux通过交叉Compile,可以为arm64 Android构建CLR。这个情况实际上是说明,.NET可以原生(二进制)运行在安卓手机...

10010

.NET9极致性能CLR操控MSIL(分层编译)

江湖评谈

.NET8/9的性能之所以优秀,分层编译的功能功不可没。这需要MSIL的一些特性支撑,进入CLR的第一步就是加载MSIL,因为其独特的加载模式,比较晦涩,本篇看...

6210

3分钟带你了解枚举

薄荷冰

枚举他是一种类型,他是你自己创造的一种根据自己需求创建的一个被命名的整型常数的集合

10310

.NET CLR进程快照

江湖评谈

CLR里面需要进程快照来查看进程的使用情况,以便对进程或者进程里面的线程进行控制或者观察,使CLR引擎更好的适应当前系统。比如CLR需要知道系统进程里面分配的线...

9110

.NET CLR线程局部存储

江湖评谈

CLR对于保存普通的线程的局部变量,在里面采用的是TLS技术,也即是:Thread-Local-Storagee,简称TLS。它是怎么做的呢?本篇来看下。

8600

.NET 高级调试:CLR和Windows加载器及应用程序域

郑子铭

第12行代码就是 mscoree.dll 执行 _CorExeMain 方法,初始化环境,10 行代码加载 CLR,CLR 从第9 行执行入口函数,知道最后进入...

25420

.Net虚拟机(CLR/JIT)加密原理(版权保护)

江湖评谈

1.前言 这里的虚拟机加密实际上是修改JIT即时编译器入口函数,让其跳转到加密软件库内部,修正被加密之后更改了的托管DLL的ILCode,以让其恢复正常编译。从...

22730

.Net8 CLR跨代(card_table)续

江湖评谈

card_table是CLR的核心技术之一,它的位标记循环遍历老年代堆(oldest_gen),找出老年堆对象对于新生代的引用,从CLR和GC里面萃取是一个较为...

13510

lldb watch card_table(CLR)的运作模式

江湖评谈

1.前言 前面两篇(CLR跨代标记内存模型,CLR card_table位移和数组)我们看了下跨代引用的理论知识,本篇来验证下这些说法。

12120

CLR跨代标记内存模型

江湖评谈

CLR深度结构内存模型,主要是跨代引用。用以描述老年代引用新生代(短暂堆)里面的对象范围。

13620

CLR card_table位移和数组

江湖评谈

1.前言 数组和位移基本上没啥关系,但可以通过位移的方式来操控数组的内存运作方式。比较细微的容易被疏忽的处理,然后引申下CLR的card_table这个表,本篇...

8710

CLR跨代(card_table)的一些细节

江湖评谈

1.前言 计算里面的0和1是基础中的基础,所以细节非常重要。本篇继续研看下card_table的一些细节。

13620

.Net CLR里的根对象是如何被释放的

江湖评谈

1.前言 根对象被GC标记为存活对象,它是不会被回收的。那么它是如何释放的呢?本篇来看下

12840

C#.Net析构知识引申(CLR级的剖析)

江湖评谈

一.前言 析构函数是一个特殊的函数,它有自己的线程,有自己的实现方式。在CLR里面相当于一个小型的自我运转系统(有的书本把这个称之为终结器)。来看下一些概念以及...

10010

.NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件)

walterlv

弱引用是 .NET 引入的概念,可以用来协助解决内存泄漏问题。然而事件也可能带来内存泄漏问题,是否有弱事件机制可以使用呢?.NET 没有自带的弱事件机制,但其中...

14330

.NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)

walterlv

如果你使用过 WPF/UWP 等 XAML UI 框架,那么应该了解到附加属性的概念。那么没有依赖属性支持的时候如何做附加属性的功能呢?你可能会想到弱引用。但这...

12810

.Net CLR GC存活标记及固定对象的设置

江湖评谈

1.前言 存活标记,意即当进行垃圾回收的时候被存活对象需要进行标记。固定对象即在GC堆不能被移动的对象,它也是通过标记来标注它是否是固定对象。本篇来看下它们是如...

13950
领券