原文地址:http://msdn.microsoft.com/en-us/magazine/cc163791.aspx 原文发布日期: 9/19/2005 原文已经被 Microsoft 删除了,收集过程中发现很多文章图都不全,那是因为原文的图都不全,所以特收集完整全文. 目录 前言 CLR启动程序(Bootstrap)创建的域 系统域(System Domain) 共享域(Shared Domain) 默认域(Default Domain) 加载器堆(Loader Heaps) 类型原理 对象…
前言 SystemDomain, SharedDomain, and DefaultDomain. 对象布局和内存细节. 方法表布局. 方法分派(Method dispatching). 因为公共语言运行时(CLR)即将成为在Windows上创建应用程序的主角级基础架构, 多掌握点关于CLR的深度认识会帮助你构建高效的, 工业级健壮的应用程序. 在这篇文章中, 我们会浏览,调查CLR的内在本质, 包括对象实例布局, 方法表的布局, 方法分派, 基于接口的分派, 和各种各样的数据结构. 我们会使用…
1,快速了解序列化----windows IO 系统,FileStream,BinaryFormatter,SoapFormatter--不支持泛型. public class SerializeRef { public static void CallQuick() { dynamic objectgrap = new List<string>() { "jeff", "kristin", "aldan", "grant&…
前言 关于混合C#和C++的编程方式,本人之前写过一篇博客(参见混合语言编程:C#使用原生的Directx和OpenGL),在之前的博客中,介绍了在C#的Winform和WPF下使用原生的Direct和OpenGL进行绘图,主要使用的方式是声明一个函数为导出函数,然后就可以在C#中使用这个函数. 存在的问题 之前的方式使C#调用C/C++成为可能,但是存在很多缺点,主要表现在以下几个方面: 使用extern "C" _declspec(dllexport)的声明方式只能定义C函数,无法…
流行的网络框架 目前流行的网络图片框架: Picasso.Universal Image Loader.Volley的(ImageLoader.NetworkImageView).Glide和Fresco 简明的介绍下(具体细节和功能可看源码和wiki): 其中Picasso和Universal Image Loader相比其它的算是最轻量级的图片框架了,它们拥有较少的方法数,Universal Image Loader是这五个框架中定制性最强的,它内部实现还是按网络框架的套路走:HttpUrl…
[本文出自天外归云的博客园] 本次对Auty自动化测试框架做些收尾工作,由于在scripts文件夹中的脚本会需要调用其他包结构文件夹中的脚本,所以这里需要添加一下框架对于内部脚本间互相调用的支持,这里需要动态的在脚本运行时为脚本添加四行内容: # -*- coding: utf-8 -*- import os import sys sys.path.append("'+Auty的根目录路径+'") 并且在脚本运行完成后删除这四行.对应要修改execute_selection.py文件:…
一.概念 1. C# :C#是微软公司发布的一种面向对象的.运行于.NET Framework之上的高级程序设计语言. 2..NET Framework(.NET框架):.NET framework 是在Visual Studio下的底层框架库,广泛用于VS开发的各种windows 程序. 3..Net:.NET 是口语化的简称,多数情况下就是 .NET framework框架库,也可以代指VS下的基于框架库开发的程序,和带指VS编程平台等和基于框架库的各种组成部分. 4.CLR(Common…
CLR的全称(Common Language Runtime) 公共语言运行时 可以把它理解为包含运行.Net程序的引擎 和 一堆符合公用语言基础(CLI)的类库的集合,他是一个规范的实现,我们开发的大多数.Net程序都是基于公用语言基础(CLI)的类库实现,并运行在CLR运行的引擎上.通常所说的.Net框架 就是CLR CLS的全称(Common Language Specification) 公用语言规范 CLS是CTS的一个子集,定义了希望编写能够在.net平台上运行的程序的语言所需符合的…
本文画出了 WCF 框架运行时的重点类之间的类关系图. Binding 一个 Binding 由多个 BindingElement 组成.BindingElement 作为主要的扩展点.每一个 BindingElement 描述某个独立的行为.最终 Binding 使用一连串的 BindingElement 来生成Channel. Description Description 表示服务的元数据,用于描述服务本身.一个服务包括多个终结点,一个终结点对应一个绑定.对应一个契约.多个操作.而服务.终…
原文:[CLR via C#]4. 类型基础及类型.对象.栈和堆运行时的相互联系 CLR要求所有类型最终都要从System.Object派生.也就是所,下面的两个定义是完全相同的, //隐式派生自System.Object class Employee { ..... } //显示派生子 System.Object class Employee : System.Object { ..... } 由于所有类型最终都是从System.Object派生的,所以可以保证每个类型的每个对象都有一组最基本…