[英]Wait for a void async method
如何等待void async
方法完成其工作?
例如,我有一個 function 如下所示:
async void LoadBlahBlah()
{
await blah();
...
}
現在我想確保所有內容都已加載,然后再繼續其他地方。
如何等待void async
方法完成其工作?
例如,我有一個如下所示的功能:
async void LoadBlahBlah()
{
await blah();
...
}
現在我想確保在繼續其他地方之前已經加載了所有內容。
如何等待void async
方法完成其工作?
例如,我有一個如下所示的功能:
async void LoadBlahBlah()
{
await blah();
...
}
現在我想確保在繼續其他地方之前已經加載了所有內容。
如何等待void async
方法完成其工作?
例如,我有一個如下所示的功能:
async void LoadBlahBlah()
{
await blah();
...
}
現在我想確保在繼續其他地方之前已經加載了所有內容。
如何等待void async
方法完成其工作?
例如,我有一個如下所示的功能:
async void LoadBlahBlah()
{
await blah();
...
}
現在我想確保在繼續其他地方之前已經加載了所有內容。
如何等待void async
方法完成其工作?
例如,我有一個如下所示的功能:
async void LoadBlahBlah()
{
await blah();
...
}
現在我想確保在繼續其他地方之前已經加載了所有內容。
如何等待void async
方法完成其工作?
例如,我有一個如下所示的功能:
async void LoadBlahBlah()
{
await blah();
...
}
現在我想確保在繼續其他地方之前已經加載了所有內容。
我已經閱讀了該線程的所有解決方案,它真的很復雜......最簡單的解決方案是返回類似布爾值的東西:
async bool LoadBlahBlah()
{
await blah();
return true;
}
存儲或檢查返回值不是強制性的。 你可以這樣做:
await LoadBlahBlah();
...如果出現問題,您可以返回false
。
您可以簡單地將返回類型更改為 Task 並在 function 末尾調用await Task.CompletedTask
,例如:
async Task MyFunction() {
await AnotherFunction();
await Task.CompletedTask;
}
我發現這比在對Task.Run(() => {... });
的調用中包裝整個 function 主體更簡單。 .
async Task LoadBlahBlah()
{
await blah();
...
}
LoadBlahBlah().Wait();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.