当前位置: 首页 > news >正文

asp.net 做网站源代码seo快速排名外包

asp.net 做网站源代码,seo快速排名外包,昆山公司网站制作,厦门工程建设招聘信息网站转自#xff1a;hez2010cnblogs.com/hez2010/p/13963803.html前言双十一当天#xff0c;个人觉得非常香#xff0c;并且花了 10 分钟时间就把自己的 4 个 .NET Core 3.1 的项目升级到了 .NET 5#xff0c;堪称无痛。但是#xff0c;.NET 5 中还有一些没有正式公开的隐藏特… 转自hez2010cnblogs.com/hez2010/p/13963803.html前言双十一当天个人觉得非常香并且花了 10 分钟时间就把自己的 4 个 .NET Core 3.1 的项目升级到了 .NET 5堪称无痛。但是.NET 5 中还有一些没有正式公开的隐藏特性那么现在就开始介绍吧。Crossgen 2Crossgen 其实就是众所周知的 ReadyToRun 特性。该功能将你的程序集进行一定程度的 AOT 编译然后在运行时跟踪热路径对一些方法进行带有更多优化的 JIT 编译即分层编译这使得程序集的加载速度大幅提高。但是 .NET 5 其实带了 Crossgen 的下一个版本Crossgen 2。Crossgen 2 的代码几乎是从 CoreRT 继承而来并在此基础上做了很大改进。CoreRT 可以对 .NET 程序集进行完全的原生优化编译编译出来的东西就是完全 native 的和 Go 的体验完全一致。Crossgen 2 则使用了这套方法将你的程序集在支持范围之内进行 Native AOT 编译然后运行时直接加载启动并根据运行情况再使用 JIT 编译器进行进一步的优化是一种混合 AOT 策略。为什么说在支持范围之内呢因为 Native AOT 必然对动态加载和 Emit 等特性不友好但是 Crossgen 2 对于这些地方则直接跳过并且由于是混合 AOT 方案运行时依然存留有 JIT因此这些功能完全不会受到影响。使用使用方法很简单在你发布程序的时候加命令行参数 /p:PublishReadyToRuntrue /p:PublishReadyToRunUseCrossgen2true 即可例如dotnet publish -c Release -r win-x64 /p:PublishReadyToRuntrue /p:PublishReadyToRunUseCrossgen2true注意由于该功能尚未正式发布并且存在一些已知的问题还没有解决因此如果要使用的话建议对发布出的程序做好测试。另外.NET 6 将会用 Crossgen 2 代替现有的 Crossgen 1追求稳定的话可以等到明年再用。栈上替换栈上替换即 On Stack Replacement。这个特性允许在运行时即使一个方法有活跃的栈帧也能直接替换实现。因此对于分层 JIT 功能来说这个特性就允许 JIT 将未经优化的代码直接切换成经过优化的代码即使被切换的方法存在活跃栈帧也没问题。使用这是一个运行时特性需要通过设置两个环境变量来开启bashexport COMPlus_TC_QuickJitForLoops1 export COMPlus_TC_OnStackReplacement1cmdset COMPlus_TC_QuickJitForLoops1 set COMPlus_TC_OnStackReplacement1pwsh$env:COMPlus_TC_QuickJitForLoops 1 $env:COMPlus_TC_OnStackReplacement 1注意当前仅支持 x64且目前处于实验性阶段。更激进的发布裁剪发布裁剪可以在发布时将没有用到的代码裁剪掉使得发布出去的程序体积大幅度减小。但是 .NET 5 默认的裁剪行为是程序集粒度的意味着会保留用到了的程序集哪怕你只用了程序集中的一个方法整个程序集也会被保留下来。但是 .NET 5 提供了一种更为激进的裁剪方式基于方法粒度进行裁剪。开启这个特性之后如果一个程序集只被调用了一个方法那裁剪后将只会保留这一个方法而不是保留整个程序集。使用使用方法很简单只需要发布时附带命令行参数 /p:PublishTrimmedtrue /p:TrimModeLink 即可例如dotnet publish -c Release -r win-x64 /p:PublishTrimmedtrue /p:TrimModeLink如果因为动态加载需要保留一些方法、类型或者程序集的话可以按照如下文章内的方法进行配置https://devblogs.microsoft.com/dotnet/customizing-trimming-in-net-core-5/注意由于这种方法较为激进请确保发布后进行充分的测试以免出现因为动态加载导致运行时找不到方法的问题。实验性运行时.NET 大量的新功能已经转移到专门的实验性运行时仓库进行开发了例如NativeAOT基于 RyuJIT 的完全原生编译NativeAOT-LLVM使用 LLVM 做代码生成的完全原生编译ManagedQuic完全 C# 实现的 QUIC 协议Utf8StringUTF-8 字符串类型JsonCodeGen使用代码生成器的 JSONs390x.NET 在 s390x 架构的移植FreeBSD.NET 在 FreeBSD 系统的移植MIPS64.NET 在 MIPS64 架构的移植RegexSRM基于微软研究院成果 Symbolic Regex Matcher 的正则表达式实现DllImportGenerator用于自动生成 P/Invoke 接口的代码生成器欢迎前往实验仓库中对应分支进行试用和贡献代码https://github.com/dotnet/runtimelab 。另外MIPS64 的移植工作由国内龙芯社区团队完成并将在 .NET 6 并入官方主线相关信息在 https://github.com/gsvm/loongson-dotnet 。总结.NET 5 有很多的没有公开宣布的特性其中很多特性都非常棒虽然没有正式发布的现阶段可能还存在一些问题后期也可能会有较大的改动但是感兴趣的读者不妨提前体验一波。
http://www.zqtcl.cn/news/684026/

相关文章:

  • 科技网站域名大型网站开发团队
  • 温岭建设规划局网站注册新公司网上怎么核名
  • dede网站移动端怎么做golang 网站开发 开源
  • 织梦网站导航固定沈阳男科医院在线咨询免费
  • 四川华鸿建设有限公司网站网站建设需求文案
  • 汕头东莞网站建设怎么制作微信小程序app
  • 网站建设预算方案模板怎么做网络推广网站
  • 顺义网站开发wordpress内容主题模板下载
  • 永康做网站的化工网站模板免费下载
  • 潍坊高密网站建设如何做网页推广
  • 杭州房产网站建设wordpress 替换谷歌字体
  • 陕西省建设工程质量安全监督总站网站开发公司与施工单位工程造价鉴定报告
  • 嘉兴网站建设企业阿里巴巴国际贸易网站
  • 临沂手机网站建设珠海手机网站建设价格
  • 56m做图片视频的网站是什么软件开发和大数据哪个前景好
  • 郑州网站建设哪家做快消品的网站
  • 太原做网站费用东莞it外包
  • 深圳网站关键词优化公司集团网站建
  • 网站建设项目合同传奇手游网站
  • 如何学习网站建设app申请付费网站
  • 微网站开发平台案例重庆网站设计哪家公司好
  • 快递空包网站建设网站的首页怎么做的
  • 青海手机网站建设北京网站建设推荐华网天下
  • 网站网站建设公司孩子学编程网上课程哪家好
  • 跨境电商网站建设方案书江门网页制作
  • 门户网站建设定做如何使用域名访问网站
  • 做网站后台运营这个工作怎么样建设网站销售
  • 两学一做网上答题网站做网站域名是赠送的吗
  • 江苏住房城乡建设厅网站WordPress上传Excel
  • 广州淘宝网站建设济南高新区网站建设