Из docs:
Если кодировка не указана, возвращается исходный буфер.
blockquote>объясните
. Укажите допустимую кодировку, например
utf-8
, в качестве второго параметра после имени файла. Например,fs.readFile("test.txt", "utf8", function(err, data) {...});
Если вы находитесь в режиме отладки, вы можете использовать средства диагностики
Когда ваше приложение запущено, перейдите в меню:
Отладка -> Windows -> Показать средства диагностики [112 ]
Если задача не вычисляется процессором, время запуска секундомера будет потрачено впустую.
blockquote>Если вы посмотрите на исходный код
System.Diagnostics.Stopwatch
, вы увидите, что он на самом деле не работает, нет потерь. У него есть две метки времениstart
иend
, и он фактически считаетelapsed
путем вычисления и суммирования периодов между ними. Обратите внимание, что вы можете запускать и останавливатьStopwatch
несколько раз, он будет измерять кумулятивный период между этими прогонами. Таким образом, ответ: да , он также вычислит время, когда поток неактивен.Также от Microsoft вы должны быть осторожны при работе
Stopwatch
в многопроцессорной среде:На многопроцессорном компьютере не имеет значения, на каком процессоре работает поток. Однако из-за ошибок в BIOS или на уровне аппаратных абстракций (HAL) вы можете получить разные результаты синхронизации на разных процессорах. Чтобы указать привязку процессора к потоку, используйте метод
blockquote>ProcessThread.ProcessorAffinity
.
С другой стороны, если вы хотите измерить, сколько времени ЦП тратит на выполнение кода, взгляните на следующую ссылку: ExecutionStopwatch . Он в основном использует использование
GetThreadTimes
и измеряет, сколько времени потратил поток, работая вместе в режиме ядра или пользователя.