【C#】深入 .NET 異步編程:Task 與 ValueTask 的區(qū)別與選擇
當(dāng)前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
在 .NET 中, Task
using System; using System.Threading.Tasks; class Program { static async Task Main() { // 異步操作:模擬從文件讀取數(shù)據(jù) string result = await ReadFileAsync("example.txt"); Console.WriteLine(result); } static async Task<string> ReadFileAsync(string filePath) { // 模擬異步操作 await Task.Delay(1000); // 返回異步操作的結(jié)果 return "File content"; } } ValueTask
using System; using System.Threading.Tasks; class Program { static async Task Main() { // 異步操作:模擬從緩存讀取數(shù)據(jù) string result = await ReadfromCacheAsync("example_key"); Console.WriteLine(result); } static async ValueTask<string> ReadfromCacheAsync(string key) { // 模擬異步操作 await Task.Delay(500); // 返回異步操作的結(jié)果 return "Cached content"; } } 區(qū)別和優(yōu)點
選擇使用場景
請注意,使用 該文章在 2023/11/28 11:46:12 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |