Страницы

воскресенье, 15 января 2017 г.

Node.js Event Loop

А знаете ли вы, что process.nextTick и Promise используют отдельный Event Loop внутри Event Loop, а fs, crypto.randomBytes и crypto.pbkdf2, dns.lookuphttp.get и http.request (вызванные с именем хоста, а не ip-адресом, и поэтому вызывающие dns.lookup), а также C/C++ аддоны, которые используют libuv thread pool, создают свои собственные потоки (по умолчанию до 4, максимум до 128), и таким образом Node.js Event Loop не совсем Single Threaded, а скорее Mostly Single Threaded?