Как мне заставить мою функцию правильно использовать обратный вызов после завершения асинхронных функций?C#

Место общения программистов C#
Ответить
Anonymous
 Как мне заставить мою функцию правильно использовать обратный вызов после завершения асинхронных функций?

Сообщение Anonymous »

У меня есть функция, которая загружает несколько ресурсов через асинхронно, и я хочу вызвать действие onComplete, когда все ресурсы загружены, но в настоящее время, учитывая природу асинхронности, я не уверен, как заставить мою функцию делать это, поскольку я я относительно новичок в асинхронном программировании.
public void Load(Action onComplete)
{
foreach (var kvp in _db)
{
var key = kvp.Key;
var assetRef = kvp.Value;
assetRef.LoadAssetAsync().Completed += handle =>
{
if (handle.Status == AsyncOperationStatus.Succeeded)
_loadedAssets.Add(key, handle.Result);

//check if all assets have been loaded and then call onComplete
};
}
}


Подробнее здесь: https://stackoverflow.com/questions/787 ... ns-are-com
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»