首頁 >後端開發 >C++ >如何在 C# 中的非同步方法中有效使用 Out 參數?

如何在 C# 中的非同步方法中有效使用 Out 參數?

Linda Hamilton
Linda Hamilton原創
2025-01-05 07:24:39969瀏覽

How Can I Effectively Use Out Parameters with Async Methods in C#?

實現帶有 Out 參數的非同步方法的困難

為了增強非同步方法的功能,開發人員在嘗試合併 Out參數時可能會遇到挑戰,如以下程式碼片段:

public async void Method1()
{
    int op;
    int result = await GetDataTaskAsync(out op);
}

但是,由於運行時的底層限制,這樣的實現面臨著障礙

解決限制

要克服這些限制,可以使用一種解決方法:傳回元組而不是使用輸出參數。這種方法可以從元組中提取必要的值,如下面修改後的程式碼所示:

public async Task Method1()
{
    var tuple = await GetDataTaskAsync();
    int op = tuple.Item1;
    int result = tuple.Item2;
}

public async Task<Tuple<int, int>> GetDataTaskAsync()
{
    //...
    return new Tuple<int, int>(1, 2);
}

透過利用元組,開發人員可以實現所需的行為,而無需依賴非同步方法中的輸出參數。

以上是如何在 C# 中的非同步方法中有效使用 Out 參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn