.NET 7 已經發布並帶來了各種性能改進

網 7

使用 .NET 7,您可以跨瀏覽器、雲、桌面、物聯網設備和移動平台構建跨平台應用程序

微軟宣布發布 您平台的新版本 “.NET 7” 其中包括帶有 RyuJIT JIT 編譯器的運行時、API 規範、WPF 庫和其他工具。

此外,ASP.NET Core 7.0 Web 應用程序、Entity Framework Core 7.0 ORM 層、WPF 7(Windows Presentation Foundation)庫、用於 GUI 開發的 Windows Forms 7 框架、Orleans 平台。

.NET 7 中的新功能

在這個新版本中,基類庫(BCL,Base Class Library) 已統一用於各類應用, 包括桌面系統、Web 應用程序、雲平台、移動應用程序、遊戲、嵌入式程序和機器學習系統的程序。 您可以使用通用 SDK、運行時和一組庫來開發不同類型的應用程序。

除此之外,還要強調的是 提供將應用程序綁定到 .NET 7 版本兼容 API 的能力 通過“net7.0”目標框架定義,例如“ net7.0 »。 要綁定到特定於平台的 API,您可以在指定目標時指定平台類型,例如通過指定“net7.0-android”。

坦比恩 突出顯示對 ARM64 架構的改進支持 並繼續努力在 x86 和 ARM64 架構上運行時實現 .NET 應用程序的同等性能。 提高了 ARM3 系統運行時的 L64 緩存效率。 LSE 指令用於隔離並行線程內存訪問,從而減少 45% 的延遲。

該庫添加了使用 Vector64、Vector128 和 Vector256 矢量類型的驅動程序,並且基於向量指令重寫了EncodeToUtf8和DecodeFromUtf8函數,性能提升高達60%(對於NarrowUtf16ToAscii和GetIndexOfFirstNonAsciiChar函數,性能提升達到35%). 總體而言,ARM64 平台上的測試通過速度提高了 10-60%。

另一方面,也 突出顯示 Linux 支持增強功能,包括使用 .NET 6 添加軟件包 到 Ubuntu 22.04 庫存存儲庫,並提供優化、緊湊、開箱即用的 docker 映像,用於快速部署具有基於 .NET 的應用程序的容器。

引入 .NET 升級助手,以便更輕鬆地將舊應用程序遷移到分支 .NET 6 或 .NET 7。新版本擴展了對將 ASP.NET 應用程序移植到 ASP.NET Core 的支持,為 WinForms、WPF 和類庫添加了代碼解析器和檢查器,實現了對文件解析可執行文件的支持,增加了對 UWP 的支持(通用 Windows 平台)。

提出了數學函數的通用接口 並且提供了在虛擬接口中定義靜態元素的可能性,這允許應用通用編程方法來執行數學運算,而無需有關值類型的確切信息。

JIT 編譯器的性能也得到了改進, 除了被添加 支持 OSR 機制 (On Stack Replacement) 更改已經執行的方法的代碼,允許您對需要很長時間才能完成的方法進行優化,而無需等待當前調用完成(在 TechEmpower 測試中,有 10-30處理第一個請求的性能提高 10-30%)。

其他變化 脫穎而出:

  • 添加了對編譯為自包含可執行文件(本機 AOT)的支持,其中整個項目最初編譯為本機目標平台代碼,而不使用中間代碼和 JIT。
  • .NET SDK 實現了限制使用提供的項目模板的能力; 例如,您可以確定模板在哪些操作系統上有效。
  • NuGet 添加了一個集中的包管理模式,允許您一次管理多個項目的依賴項。

終於 如果您有興趣了解更多信息,您可以查看詳細信息 在下面的鏈接中。

對於那些感興趣的人,您應該知道 .NET SDK 7、.NET Runtime 7 和 ASP.NET Core Runtime 7 的構建是為 Linux、macOS 和 Windows 構建的。 .NET Desktop Runtime 6 僅適用於 Windows。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責資料:AB Internet Networks 2008 SL
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。