У меня есть метод, который я хочу ждать, но я не хочу вызывать эффект домино, который может вызвать любой вызов этого метода вызова и ждать его. Например, у меня есть этот метод:Как я могу ожидать метода async без модификатора async в этом родительском методе?
public bool Save(string data)
{
int rowsAffected = await UpdateDataAsync(data);
return rowsAffected > 0;
}
Я звоню:
public Task<int> UpdateDataAsync()
{
return Task.Run(() =>
{
return Data.Update(); //return an integer of rowsAffected
}
}
Это не будет работать, потому что я должен поставить «асинхр» в методе подписи для Save()
, а затем я могу 't return bool
Мне нужно сделать это Task<bool>
, но я не хочу, чтобы кто-то ждал метода Save()
.
Есть ли способ приостановить выполнение кода, например, ждать или как-то ждать этого кода без модификатора async?
Мне было бы очень досадно, если бы вы дали мне доступ к методу «Сохранить», который заблокировал мой поток, что заставило меня обернуть вызов в «Задачу», что именно то, что вы могли бы вернуть мне в первую очередь , Просто говорю. –