Этот вопрос заключается в том, чтобы понять, как цикл событий вызывает поток пула для обработки задачи. Скажите, Я хочу создать функцию (скажем, обрабатывать небольшую задачу), а не операцию ввода-вывода, я хочу, чтобы это было обработано с помощью функции обратного вызова, так что она может вызывать пул потоков, а задача может совпадать с моим основным потоком , и возвращает результат обратного вызова после завершения. У меня есть понимание, что это можно сделать, создав дочерние процессы (форматирование и т. Д.), , но я немного смущен и хочу понять, как именно процесс выполняется одновременно в однопоточном узле в операции ввода-вывода, а не в пользовательской операции. Что именно происходит в цикле событий, все события будут переданы в пул потоков или как он идентифицирует, является ли это операцией ввода-вывода?Определенная пользователем функция обратного вызова использует пул потоков в node.js?
Я новичок в node.js и полностью смущен. Помощь будет оценена :)
, если я создаю функцию 2, скажу A и B, я вызываю функцию отправки B как параметр и функцию A, называемую этой функцией в качестве обратного вызова, будет ли эта функция отображаться в цикле событий ??? Теперь выполнение этой области кода является асинхронным или синхронным? –
@SureshMainali Он синхронный, то есть функции A и B работают в пределах одной и той же последовательности циклов событий. Чтобы запустить B в другой итерации, вы можете использовать что-то вроде 'setTimeout' или [' process.nextTick'] (http://nodejs.org/api/process.html#process_process_nexttick_callback) – Curious
@SureshMainali перефразирует мой комментарий: этот регион код *** может *** быть асинхронным, если вы вызываете B из другой асинхронной функции (например, 'setTimeout',' process.nextTick', 'fs.readFile' и т. д.) – Curious