Как получить ожидаемую тему. Сон?

Я пишу сетевое приложение, основанное на парадигме ожидания / сна.

Иногда возникают ошибки подключения, и по моему опыту стоит подождать некоторое время, а затем повторить попытку.

Проблема в том, что если я использую Thread.Sleep или какую-либо подобную операцию блокировки в await / async, он блокирует всю активность в потоке вызывающего.

Чем заменить Thread.Sleep (10000) на тот же эффект, что и

await Thread.SleepAsync(10000)

?

ОБНОВИТЬ

Я предпочитаю ответ, который делает это без создания каких-либо дополнительных тем

Ответы на вопрос(1)

Ваш ответ на вопрос