Мне нужно проверить, сколько времени потребуется для запуска нескольких сценариев, и хотел, чтобы я знал, как использовать таймер, поэтому я написал короткий тест ниже, чтобы проверить мою логику:Сон или секундомер Немерное измерение
for($i = 0; $i -lt 11; $i++) {
$sw = [Diagnostics.Stopwatch]::StartNew()
Start-Sleep -Milliseconds 2000
$sw.Stop()
$elapsed = $sw.Elapsed.Milliseconds
Write-Host $elapsed
}
Где я просто запускает таймер, вызывая Start-Sleep
на 2000 миллисекунд, а затем вывода (то, что я думал, что будет) истекшее время (в миллисекундах).
Это выход:
1
6
11
11
12
9
11
12
12
11
8
Я не 100% уверен, что ожидать от выхода, но мое предположение, что каждая строка будет чуть более 2000, так как это длина сна ,
Кто-нибудь знает, что здесь происходит? Я также проверил это с другими наименованиями (минуты, часы, секунды) с аналогичными запутанными результатами.
Каждый раз, когда я запускаю этот скрипт, результаты разные, и я не могу представить какой-либо шаблон.