随笔分类 - c#
摘要:<!--[if !supportLists]-->1.1 <!--[endif]-->强命名程序集能防篡改 <!--[if !supportLists]-->1.2 <!--[endif]-->延迟签名、 <!--[if !supportLists]-->1.3 <!--[endif]-->私有部署
阅读全文
摘要:1.1 两种程序集,两种部署(待更新...) 两种程序集:弱命名程序集,强命名程序集。两者结构完全相同。区别:强命名程序集使用发布者的公钥/私钥进行签名。 部署:私有或者全局。 1.2 为程序集分配强名称 1.3 全局程序集缓存 1.4 在生成的程序集中引用强命名程序集
阅读全文
摘要:1.1 将模块合并成程序集 Clr操作的是程序集。它会加载包含清单元素据表的文件,根据清单来获取程序集中的其他文件名称。程序集特点: (1)定义了可重用的类型 (2)用一个版本标记 (3)可以关联安全信息 使用程序集的好处: (1)不同的类型用不同的文件,使文件能以增量方式下载,对购买、安装程序进行
阅读全文
摘要:1 生成、打包、部署和管理应用程序及类型 1.1 .net framework 部署目标 Windows一直不稳定和过于复杂(其实也很封闭,逐渐开放,如core),微软认为主要原因是: (1)应用程序来自微软或其他厂商的dll,多个厂商的代码带来复杂性。安装新程序会破坏原有程序,带来dll hell
阅读全文
摘要:1.1 通用类型系统 Common type system用于描述类型的定义和行为,具体可以看ECMA,最好了解一下es5 es6。 一个类可以包含0个或多个成员,字段、方法、属性、事件。 Private 类内部访问 Assembly 同一程序级访问 Family or assembly 由程序集中
阅读全文
摘要:1.1 执行程序集的代码 托管程序集包含IL和元素据。某种程度上IL可以当作面向对象的机器语言。 为了执行方法,需要把IL转换成本机CPU指令,由clr的JIT(just-in-time,即时)编译器完成。需要注意的是:Jit将cpu指令存在内存,程序终止时,需要重新编译cpu指令。性能方面,对大多
阅读全文
摘要:做了一段时间开发,最近重新看了一下C#底层的知识,记录一下。 说明:全文不区分大小写,以后不加额外注释的都遵循这个规则。 1 CLR的执行模型 1.1 将源代码编译成托管模块 公共语言运行时(common language runtime,clr)是多语言平台的运行时,核心功能:内存管理、程序集加载
阅读全文

浙公网安备 33010602011771号