Libuv: хорошая идея добавить короткий сон в обработчик простоя? - PullRequest
0 голосов
/ 02 марта 2019

Как мой частный проект, я работаю на сервере веб-приложений, который состоит из libuv и интерпретатора Scheme, поэтому он работает как версия Node.js. для Scheme.

В моей текущей реализации простояОбработчик вызывает функцию, которая обновляет состояние интерпретатора Scheme.В коде схемы все функции блокировки, такие как запрос к базе данных, вызываются в отдельном потоке, поэтому эта функция обновления никогда не должна блокироваться.

Это выглядит работающим.Но когда я запускаю этот сервер, загрузка процессора достигает 100%, а охлаждающий вентилятор очень раздражает.

Чтобы уменьшить нагрузку на процессор, я добавил usleep(1000); в конец обработчика простоя.Это приемлемо для libuv?Или не должен ли обработчик простоя содержать блокирующие вызовы?

...