Как дождаться всех результатов от IAsyncEnumerable<>? ⇐ C#
-
Anonymous
Как дождаться всех результатов от IAsyncEnumerable<>?
Я работаю над новыми возможностями IAsyncEnumerable в C# 8.0. Допустим, у меня есть какой-то метод, который я хочу использовать:
public IAsyncEnumerable SomeBlackBoxFunctionAsync(...) { ... } Я знаю, что могу использовать его с синтаксисом await foreach.... Но предположим, что моему потребителю необходимо получить все результаты этой функции, прежде чем она продолжит работу. Какой синтаксис лучше всего подходит для ожидания всех результатов, прежде чем продолжить? Другими словами, я хотел бы иметь возможность делать что-то вроде:
// но это расширение — AllResultsAsync() — не существует :-/ List myList = ждут SomeBlackBoxFunctionAsync().AllResultsAsync(); Как правильно это сделать?
Я работаю над новыми возможностями IAsyncEnumerable в C# 8.0. Допустим, у меня есть какой-то метод, который я хочу использовать:
public IAsyncEnumerable SomeBlackBoxFunctionAsync(...) { ... } Я знаю, что могу использовать его с синтаксисом await foreach.... Но предположим, что моему потребителю необходимо получить все результаты этой функции, прежде чем она продолжит работу. Какой синтаксис лучше всего подходит для ожидания всех результатов, прежде чем продолжить? Другими словами, я хотел бы иметь возможность делать что-то вроде:
// но это расширение — AllResultsAsync() — не существует :-/ List myList = ждут SomeBlackBoxFunctionAsync().AllResultsAsync(); Как правильно это сделать?
Мобильная версия