今日訪談《玩大小單雙五期必中的實力導師》陳北團隊
玩大小單雙五期必中的實力導師 【╅導.師1460179】〖—880XS·CC—〗【金-牌-團-隊-導-師-單-帶,推-薦-頂-級-信-譽-網,丨一.對.一.丨全.天.在.線.】
.NET 8 Preview 3 現已推出,這個預覽版包括對構建路徑、工作負載、Microsoft.Extensions 和容器的更改,還包括針對 Arm64 的 JIT 和動態 PGO 的效能改進。
以下為該預覽版的部分改動:
SDK 改動
對 SDK 進行了多項改進,並進行了重大更改。
有關重大更改的更多資訊,請參閱 。
簡化輸出路徑
.NET SDK 引入了一個選項來建立更統一、更簡化的輸出路徑結構。新的輸出路徑側重於:
- 將所有構建輸出收集在一個公共位置
- 在公共位置下按專案分隔構建輸出
- 將整體構建輸出佈局展平到 最多三層深度
要選擇新的輸出路徑佈局,需要在
Directory
.
Build
.
props
檔案中設定
UseArtifactsOutput
屬性。
開始的最簡單方法是在儲存庫的根目錄中執行
dotnet
new
buildprops
,開啟生成的
Directory
.
Build
.
props
檔案,然後將以下內容新增到該檔案中的
PropertyGroup
:
<UseArtifactsOutput>true</UseArtifactsOutput>
此後,所有專案的構建輸出都將放入儲存庫根目錄中的 .artifacts 目錄中,該目錄可配置,只需將 Directory.Build.props 檔案中的 ArtifactsPath 屬性設定為其他目錄。
.
artifacts
目錄的佈局將採用
<ArtifactsPath>
\
<Type
of
Output
>
\
<Project
Name
>
\
<Pivots>
形式。
新的
dotnet workload clean
命令
新的命令,可幫助清理剩餘的工作負載包(工作負載所包含的實際功能、 和模板單元):
dotnet workload clean
clean 有兩種操作模式,分別是:
dotnet workload clean
這個模式為基於檔案或基於 MSI 的工作負載執行工作負載垃圾收集。在這種模式下,垃圾收集行為正常,只清理孤立的包本身。
dotnet workload clean --all
與 workload clean 不同, workload clean --all 不定期執行垃圾回收,這意味著它會清除機器上 所有,不是來自 Visual Studio 且屬於當前 SDK 工作負載安裝型別(基於檔案或基於 MSI)的現有包。
執行時改動
引入驗證選項結果生成器 (ValidateOptionsResultBuilder)
新的 ValidateOptionsResultBuilder 使建立 ValidateOptionsResult 物件變得更容易,這是實現 IValidateOptions.Validate(String, TOptions) 所必需的。
此構建器允許累積多個錯誤,然後一次檢視所有問題,並相應地解決它們。
使用示例:
ValidateOptionsResultBuilder builder = new(); builder.AddError("Error: invalid operation code"); builder.AddResult(ValidateOptionsResult.Fail("Invalid request parameters")); builder.AddError("Malformed link", "Url");// Build ValidateOptionsResult object has accumulating multiple errors.ValidateOptionsResult result = builder.Build();// Reset the builder to allow using it in new validation operation.builder.Clear();
引入配置繫結原始碼生成器(the configuration binding source generator)
使用新的 ,可自動生成無反射和 AOT 友好的繫結實現。
該生成器會探測 Configure 、 Bind 和 Get 呼叫,可以從中檢索型別資訊。
using Microsoft.AspNetCore.Builder;using Microsoft.Extensions.Configuration;using Microsoft.Extensions.DependencyInjection; WebApplicationBuilder builder = WebApplication.CreateBuilder(args); IConfigurationSection section = builder.Configuration.GetSection("MyOptions");// !! Configure call - to be replaced with source-gen'd implementationbuilder.Services.Configure<MyOptions>(section);// !! Get call - to be replaced with source-gen'd implementationMyOptions options0 = section.Get<MyOptions>();// !! Bind call - to be replaced with source-gen'd implementationMyOptions options1 = new MyOptions(); section.Bind(myOptions1); WebApplication app = builder.Build(); app.MapGet("/", () => "Hello World!"); app.Run();public class MyOptions{ public int A { get; set; } public string S { get; set; } public byte[] Data { get; set; } public Dictionary<string, string> Values { get; set; } public List<MyClass> Values2 { get; set; } }public class MyClass{ public int SomethingElse { get; set; } }
在專案中啟用生成器時,編譯器會隱式地選擇生成的方法,而不是預先存在的基於反射的框架實現。
要啟用該原始碼、生成器,請下載 Microsoft.Extensions.Configuration.Binder 的最新預覽版。 生成器 預設關閉。要使用它,請將以下屬性新增到專案檔案中:
<PropertyGroup> <EnableMicrosoftExtensionsConfigurationBinderSourceGenerator>true</EnableMicrosoftExtensionsConfigurationBinderSourceGenerator></PropertyGroup>
.NET 8 將在第四個預覽版向 .NET SDK 新增啟用機制,不需要 NuGet 包引用也可以使用原始碼、生成器。
本機程式碼生成 Native code generation
對 JIT 編譯器進行了以下改進:
Arm64
-
將
OR ( condition , condition )
轉換為CCMP
。它允許 JIT 在 arm64 上發出CCMP
以進行按位或關係比較。 -
為 arm64 最佳化了
x < 0
和x >= 0
- 最佳化了除法在某些場景的溢位檢查。
配置檔案引導最佳化
- 啟用了基本塊計數的互鎖分析
- 支援配置檔案合成 , , ,
- 在 Tier0 中啟用了更多內在函式,例如 get_IsValueType
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70028928/viewspace-2945657/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 《雙人成行》開發團隊訪談:如何實現劇情與遊戲性的美妙結合?遊戲
- 領導力:從個人到團隊(轉)
- 第一財經《正規的大小單雙平臺網址》GL團隊釋出
- 技術領導力 程式設計師如何才能帶團隊 文摘 (一)程式設計師
- 淺談團隊管理在IT專案實施中的作用
- 《放逐花園:黃金收割》開發人員訪談:玩家的期待是團隊的動力源泉
- Gopher China 2019 講師專訪-騰訊/TARS開源團隊核心成員陳明傑Go
- 《心跳文學部 Plus!》日語本地化團隊訪談:民間翻譯團隊的轉正之路
- 也談團隊文化
- 遊戲專案管理——陳奕雍訪談遊戲專案管理
- 遊戲設計師談團隊矛盾應對原則遊戲設計師
- 團隊動力之團隊發展階段理論
- 如何提高團隊協作力?
- 專案團隊的凝聚力(轉)
- 團隊管理的簡單總結:少即是多,體力透支,負能量管理,自我進化團隊,溝通
- 如何構建測試團隊的軟實力 - 高學文
- 閒談團隊的程式碼質量
- RWP團隊談SQL優化SQL優化
- 極簡實現 TiDB 冷熱資料分層儲存 | He3 團隊訪談TiDB
- (極致經驗指導)彩票如何看大小雙單走勢圖χ
- 談談資料產品團隊的角色和職責
- 閒談管理:團隊帶來的感動
- robbin談管理:改造團隊的經驗(1)
- robbin談管理:改造團隊的經驗(2)
- 《Oddity》團隊淺談「業餘遊戲設計師」的堅守與執念遊戲設計師
- 提升技術團隊戰鬥力的幾件事
- 《黑神話:悟空》動捕團隊專訪:聊聊國內動捕團隊的現狀
- 《新美妙世界》開發團隊訪談:「開啟一段全新的《美妙世界》之旅」
- 《戰神:諸神黃昏》主創團隊訪談:直面北歐世界的終焉之日
- 分析工程師 – 資料團隊中的新角色 - KDnuggets工程師
- 陳皓(@左耳朵耗子):我的精神家園(圖靈訪談)圖靈
- SAFe必備——提高團隊敏捷性敏捷
- 戴爾任命首席會計師 全球財務領導團隊重組
- 高效團隊領導模式(轉載)模式
- 高德技術團隊:深度學習在導航速度預測中的探索與實踐深度學習
- 新人成長:新人如何快速融入技術實力強的前端團隊前端
- 設計師必備的設計導航站,工作簡單化
- ERP實施中的團隊建設(1)(轉)