此存储库包含 .NET Core运行时的完整源代码。

.NET Core最好被认为是“敏捷.NET”。一般来说它是一样的
Desktop .NET Framework
作为Windows操作系统的一部分分发,但它是一个跨平台
(Windows,Linux,macOS)和可以部署的跨体系结构(x86,x64,ARM)子集
作为应用程序的一部分(如果需要),因此可以快速更新以修复错误或添加功能。

具体而言,此存储库最好被认为是以下NuGet包的源代码:

  • ** Microsoft.NETCore.Runtime.CoreCLR ** - 表示对象分配器,垃圾收集器(GC),类
    加载器,类型系统,互操作和.NET类库的最基本部分(例如
    System.Object,System.String …)

它还包含以下密切相关的支持包的源代码。

  • Microsoft.NETCore.Jit - Just In Time(JIT)编译器 .NET中间语言(IL)

  • Microsoft.NETCore.ILAsm - 用于的汇编程序 .NET中间语言(IL)

  • Microsoft.NETCore.ILDAsm

  • Microsoft.NETCore.TestHost - 这包含corehost.exe程序,这是一个小包装器 使用.NET运行时运行在命令行上传递给它的IL DLL。

  • Microsoft.TargetingPack.Private.CoreCLR - 一组表示编译时表面的程序集 由运行时本身实现的类库的区域。

CoreFX存储库的关系

就其本身而言,Microsoft.NETCore.Runtime.CoreCLR包实际上还不够。
其中一个原因是CoreCLR包试图最小化它实现的类库的数量。
仅包括对运行时的内部工作具有强依赖性的类型(例如,
System.ObjectSystem.StringSystem.Threading.ThreadSystem.Threading.Tasks.Task和大多数基础接口)。
相反,大多数类库都是作为独立的NuGet包实现的,它只使用.NET Core
运行时作为依赖项。 许多最熟悉的类(System.CollectionsSystem.IOSystem.Xml等),存在dotnet/corefx 存储库中定义的包中。

但是你对CoreCLR做不了多少的主要原因是 类库LOOK中的类型ALL **
就像它们是由CoreFX框架而不是CoreCLR定义的。这里定义的任何库代码
它位于一个名为System.Private.CoreLib.dll的DLL中,顾名思义就是私有(隐藏)。
相反,对于CoreCLR中定义的任何特定PUBLIC类型,我们在CoreFX中自然地找到了“正确”的包
属于并使用该包作为
public publishing**点。那个’facade’ 包然后转发引用
到这里定义的System.Private.CoreLib.dll中的(私有)实现。
例如,CoreFX中定义的*System.Runtime *包声明类似的类型的PUBLIC名称
System.ObjectSystem.String。因此,从应用程序的角度来看,这些类型存在于System.Runtime.dll中。
但是,System.Runtime.dll(在​​CoreFX repo中定义)最终将引用转发给System.Private.CoreLib.dll
这是在这里定义的。

因此,为了运行应用程序,您需要同时使用Microsoft.NETCore.Runtime.CoreCLR NuGet包
(在此存储库中定义)以及您实际引用的任何已定义的包
在CoreFX存储库中(至少包括System.Runtime包)。你还需要一些
加载CoreCLR包以及CoreFX包并启动代码的“host”可执行文件(通常是
你使用dotnet.exe这个)。

.NET Core Common Language Runtime (CoreCLR)相关推荐

  1. The Common Language Runtime (CLR)

    正文 印象 Figure 1-1. .NET Framework Figure 1-2. Common Language Runtime functions 定义 The Common Languag ...

  2. 多态和接口(3)——设计模式(1)——方法override、CLR(Common Language Runtime 公共语言运行时)、CTS(Common Type System 公共语言系统)

    1.多态就是设计模式!!!多态理解了设计模式就理解了. 2.定义坐标类,坐标类默认继承Object的ToString()方法,没有自己的特色. 3.override ToString()输出友好信息: ...

  3. 解决Android studio遇见Could not find common.jar (android.arch.core:common:1.0.0).错误

    Error:Could not find common.jar (android.arch.core:common:1.0.0). Searched in the following location ...

  4. .NET Core开发日志——Runtime IDentifier

    .NET Core对于传统.NET开发人员而言是既熟悉又陌生的新平台,所以有时遇上出乎意料的事情也纯属正常情况.这时只需点耐心,多查查资料,努力找到原因,也未尝不是件有意义的体验. 比如当建完一个最简 ...

  5. 编译报错 Error:Could not find common.jar (android.arch.core:common:1.0.0).

    jcenter已经删掉了android.arch.core库,所以需要从 maven { url "https://maven.google.com" }中获取android.ar ...

  6. org.jeecgframework.core.common.exception.MyExceptionHandler]java.lang.NullPointerException

    问题原因:

  7. Common Language Extension(CLE) 介绍

    真是林子大了什么鸟都有啊,最近发现一个CLE的东东,可以支持各种编程语言之间的相互调用: http://www.srplab.com/index.html 安卓版本支持Java调用Python代码,也 ...

  8. v2ray.com/core/common/retry: all retry attempts failed

    这个错误信息表明在使用 V2Ray 连接到服务器时,所有的重试尝试都失败了.这可能是因为服务器的连接出现故障,或者是因为网络连接出现问题.你可以尝试重启 V2Ray 或者重新连接到网络,如果问题仍然存 ...

  9. 什么是“.NET Core”?

    本文翻译自:What is ".NET Core"? Recently in an official .NET Framework Blog it was announced th ...

最新文章

  1. mysql 交集_MySQL 查询结果取交集的实现方法
  2. 在eclipse中查看Android源代码
  3. Linux 下安装Nginx,配置自启动
  4. win10 uwp 让焦点在点击在页面空白处时回到textbox中
  5. 15.【nuxt起步】-Nuxt使用jsweixin sdk
  6. 大米云主机首批优秀体验师新鲜出炉——软件服务篇
  7. vmware虚拟机使用docker使用代理国外镜像
  8. 科学家发现程序员秃头新原因,毛囊干细胞竟会悄悄逃走
  9. 财经管理中的计算机应用内容,财大 财经管理中的计算机应用
  10. 爬虫——爬取京东评价
  11. python duplicated函数_16、pandas的duplicated和drop_duplicaates函数
  12. IDEA中文切换回英文
  13. Tossing Bad Mupd Msg Pid In The Alert.Log
  14. 龙蜥操作系统(Anolis OS)安装DDE桌面
  15. BIM技术在住宅园区物业管理中的应用及其优势
  16. 自学B站小甲鱼数据结构课程-C语言实现基础数据结构-栈-的例子
  17. 借助“商业模式画布”探索产品的用户需求与价值主张
  18. 长尾分布,重尾分布(Heavy-tailed Distribution)
  19. GoLang 调用 .so 文件
  20. 【SpringBoot】51、Spring-Boot-Admin搭建服务监控系统

热门文章

  1. 大力护眼灯官宣孙俪为代言人,同千万父母一起保护孩子视力健康
  2. DMV聚焦IT架构可视化管理,建立IT世界的数字地图
  3. 上瘾性行为,戒不掉的颓废
  4. KY16 求root(N, k)|模拟暴力解法
  5. 经验分享:iOS平台UI设计规范
  6. 网络安全行业相关证书
  7. DBCO-Sulfo-NHS ester,1400191-52-7含有DBCO部分的水溶性硫化试剂
  8. QT signals and slots
  9. linux文件系统变成只读,Linux文件系统变成只读解决办法
  10. Locally Linear Emding(LLE降维) 算法讲解及Python 实现