如何創建異步任務但不立即運行它?
private static async Task<string> GetString()
{
await Task.Delay(5000);
return "Finish";
}
Task<string> str = GetString();
這會立即啟動任務。
uj5u.com熱心網友回復:
如果您想要延遲執行,請使用 Func。
private static Func<Task<string>> GetStringFunc()
=> GetString;
因此:
var deferred = GetStringFunc();
/*whatever*/
var task = deferred();
更新:請看一下Lazy<T>。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/477777.html
