Пауза Task.Delay в C#
Метод Task.Delay планирует продолжение через таймер. Поток на это время не засыпает в вызове: таймер сам завершит задачу.
Интервал задают в миллисекундах. Реальное время может оказаться чуть больше: у таймера есть свой шаг.
Замерим паузу в 80 мс и проверим, что прошло хотя бы 50 мс. Порог ниже запрошенного как раз из-за шага таймера:
using System.Diagnostics;
Stopwatch watch = Stopwatch.StartNew();
await Task.Delay(80);
watch.Stop();
Console.WriteLine(watch.ElapsedMilliseconds >= 50); // выведет True
Сделайте две короткие паузы подряд и после них выведите "ready".