Код: Выделить всё
// Measure the time it takes to add items to the collection with one millisecond delay between Adds.
var sw = Stopwatch.StartNew();
for (int i = 0; i < collection.BoundedCapacity; i++)
{
collection.Add(i);
await Task.Delay(millisecondsDelay: 1);
}
sw.Stop();
При закомментировании строки await Task.Delay(milliсекундыDelay: 1), программа ведет себя как положено (цикл завершается через несколько миллисекунд).
Я понятия не имею, что здесь происходит. Может ли кто-нибудь объяснить это поведение?
ОБНОВЛЕНИЕ: Это было вызвано моим незнанием того, что разрешение таймера Windows составляет примерно 15 миллисекунд - см. ответ Саймон Кокоурек ниже.
Подробнее здесь: https://stackoverflow.com/questions/791 ... ime-than-e
Мобильная версия