.net core 3实现了.net 标准2.1。

1、生成可执行文件

以前版本需要dotnet run运行项目,.net core 3支持直接生成目标平台的可执行文件。比如windows就是exe了,linux就+x了。

2、生成依赖项的副本

以前版本在build时不会把NuGet的工具复制到目标目录,新版本会复制,但不包括razor和链接(链接的含义不太清楚)。

3、本地工具

这个工具指NuGet的包,以前2.1支持全局的,新版本支持在目录里放置dotnet-tools.json清单文件,再使用dotnet tool restore命令重载。

旧版本的工具依然依赖旧版本.net core SDK。

4、支持WPF与Windows Froms

这个在很多国内新闻上已经介绍过了,事实上这些新闻只关注这一条。

项目文件的Sdk设置为Microsoft.NET.Sdk.WindowsDesktop,添加<UseWPF>true</UseWPF>与或<UseWindowsForms>true</UseWindowsForms>即可添加支持。

5、内建快速的JSON解析器

System.Text.Json.Utf8JsonReader,此物只向前读取(只进读取器),内存占用更少,常规性能是Newton JSON.net的二倍,这个很给力哦!应该会降低很多项目对Newton的依赖。

现在只有读取器,以后会有:JSON 写入、DOM(随机访问)、poco 序列化程序、poco 反序列化程序。

新推出的Span<T>对高性能的字符分析程序都有很大的好处,包括Kestrel也从中受益。(Kestrel是微软跨平台基于libuv的高性能web服务器,目前应该是最强,不过我还没有其与h2o的比较信息)

6、索引和范围

这应该是吸纳百家之长的又一力作了,Python对索引的支持非常到位,现在.net也支持了(C#8.0才开始有)。

[1,2,3][0] // 1

[1,2,3][^1] // 输出3,反向索引

[1,2,3,4,5][1..^2] // 输出[2,3,4] 范围索引

7、异步流

又一个新语言特性,也是要C#8.0支持。

IAsyncEnumerable<T>, IEnumerable<T>的异步版本。

异步枚举器,可以在await foreach中途yield return。建议正式版再使用,现在还有bug。

8、类型:SequenceReader 序列读取器

配合前面提到的Span<T>,用于高效率,简单,低分配的读取分析文本,例如分割回车换行。

9、类型:MetadataLoadContext 元素据负载描述表

可以反射一些程序集的信息,但是不能执行程序集的Invoke。用于工具导向的软件,或者运行时激活某些功能的场景,用于释放程序集的文件锁或暂用内存之类的吧啦吧啦……

10、支持Linux 上的 TLS 1.3 和 OpenSSL 1.1.1

使用SslStream的地方,会自动搜寻Linux所安装的最新版本OpenSSL,尽可能使用TLS1.3。因为TLS1.3更快,步骤更少。而且在SSL在Linux上的特定版本还有漏洞……OpenSSL的漏洞。

11、AES-GCM 和 AES-CCM加密算法支持

System.Security.Cryptography.AesGcm,System.Security.Cryptography.AesCcm可用。均使用AEAD算法(Authenticated Encryption with Association Data (AEAD) algorithms)。

12、加密密钥的导入导出

不用X.509证书即可导入标准的RSA、DSA、ECDsa、ECDiffieHellman公钥证书,与PKCS#8私钥证书。

13、Linux上支持串口

这个不懂,就是以前只有Windows支持,现在Linux也可以了。

14、优化了很多现有功能

字符串在字典中做key也会更高效,HttpClient支持无损压缩Brotli,很多都是不需要修改代码就可受益。

15、分层编译

.net core 2.1新功能,2.2预览版默认启动,2.2正式时改为可选,现在3.0默认开启……曲折。

这货可提高启动性能,更好的JIT性能,提高吞吐量。

16、Linux的ARM64

哈,Windows 没有。IoT问题吧。

更多:

.net core中使用GB2312编码的问题

.Net Core EF 使用整理合集

.Net Core URL编码和解码

.Net Core3 新特性整理的更多相关文章

  1. Swift 3到5.1新特性整理

    本文转载自:https://hicc.me/whats-new-in-swift-3-to-5-1/,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有. Hipo 2.0 重写从 Swif ...

  2. Java JDK1.5、1.6、1.7新特性整理(转)

    原文链接:http://www.cnblogs.com/tony-yang-flutter/p/3503935.html 一.Java JDK1.5的新特性 1.泛型: List<String& ...

  3. Java JDK1.5、1.6、1.7新特性整理

    转载请注明出处:http://www.cnblogs.com/tony-yang-flutter 一.Java JDK1.5的新特性 1.泛型: List<String> strs = n ...

  4. php7 新特性整理

    PHP7 已经出来1年了,PHP7.1也即将和大家见面,这么多好的特性,好的方法,为什么不使用呢,也希望PHP越来越好. 在这里整理 PHP 5.1 ,PHP5.2,PHP5.3,PHP5.4,PHP ...

  5. Android 6.0 新特性 整理 资料来自网络

    Android 6.0新特性 Runtime Permissions Doze and App Standby Apache HTTP Client Removal BoringSSL Access ...

  6. php5.5之后新特性整理

    1 生成器 yield关键字yield的中文文档在这里:http://php.net/manual/zh/language.generators.overview.php查看文档,能知道yield的一 ...

  7. php 7 新特性整理小结

    php 7 比php 5 性能提升了很多,php 7 新特性主要表现在:1.变量存储字节减小,减少内存占用,提升变量操作速度:2.改善数组结构,数组元素和hash映射表被分配在同一块内存里,降低了内存 ...

  8. ES6新特性整理,你需要了解的ES6知识

    ES6是新版本JavaScript语言的标准,上一次标准的制订还是2009年出台的ES5.目前ES6的标准化工作已经完成,14年12月份放出了正式版本. 目前主流的浏览器都支持运行ES6代码,如果你的 ...

  9. java1.8新特性整理(全)

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/yitian_66/article/deta ...

随机推荐

  1. 16. Promise对象

    目录 Promise对象 一.含义 1. Promise是什么 2. 实例讨论 二.Promise特性案例解析 1. Promise的立即执行性 2. promise的三种状态 3. Promise的 ...

  2. 英语insuraunce保险insuraunce单词

    English Alternative forms insuraunce Etymology From the older form ensurance, see also assurance. Pr ...

  3. 【解决】k8s 1.15.2 镜像下载方案

    k8s 国内镜像下载方案 众所周知,国内是不太容易下载k8s.gcr.io站点的镜像的 一.第一种方案:Azure中国镜像站 http://mirror.azure.cn/help/gcr-proxy ...

  4. Linux必知必会--vmstat

    视野.格局.胸怀.魄力 ---无 参考资料:https://man.linuxde.net/vmstat http://www.ha97.com/4512.html vmstat命令的含义为显示虚拟内 ...

  5. 直接将字典转为DataFrame格式时,会出现:ValueError: If using all scalar values, you must pass an index(四种解决方案)

    问题:想要将字典直接转为DataFrame格式时,除了字典外没有传入其他参数时,会报错 ValueError: If using all scalar values, you must pass an ...

  6. Java 执行

    java -cp****.jar ****.****.className [args] linux 下 -cp 参数使用 : 分割 一般都是 .:lib/* windows 下使用 ; 分割

  7. JUnit 5.x 知识点

    出处:https://blinkfox.github.io/2018/11/15/hou-duan/java/dan-yuan-ce-shi-zhi-nan/#toc-heading-14 表面上来看 ...

  8. Hbase 分页设计

    hbase 数据获取方式 直接根据 rowkey 查找,速度最快 scan,指定 startrowkey.endrowkey 和 limit获取数据,在 rowkey 设计良好的情况下,效率也不错 全 ...

  9. 31 Game-Based Learning Resources for Educators

    https://www.legendsoflearning.com/resource/31-game-based-learning-resources-for-educators/ Game base ...

  10. Linux安装pycharm并添加图标到桌面

    安装: 1.到pycharm官网下载Linux版本的pycharm包. 2.打开中端 cd到下载的文件夹,默认为 ~/Downloads/ 文件夹下 3.执行命令 tar -xvzf pycharm- ...