Nodejs: Что означает `process.binding`?

Я видел process.binding('...') много раз, просматривая исходный код node.js на github .

Кто-нибудь может мне объяснить, что делает эта функция?

70 голосов | спросил laconbass 4 J0000006Europe/Moscow 2014, 20:33:20

2 ответа


0

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

Например, здесь timer_wrap привязка зарегистрирована. экспортирует Timer конструктор. В lib/timers.js это импортировано

ответил vkurchatkin 4 J0000006Europe/Moscow 2014, 20:39:46
0

Это функция, которая, по сути, выходит, захватывает функцию C ++ и делает ее доступной внутри javascript. Возьмите этот пример process.binding('zlib'), который используется в zlib

Это, по сути, получение объекта zlib C ++, а затем все остальное время он используется в коде javascript.

Итак, когда вы используете zlib, вы на самом деле не выходите и захватывая библиотеку C ++, вы используете библиотеку Javascript, которая включает в себя функцию C ++.

Это облегчает использование

ответил Mohamed Ben HEnda 24 +03002017-10-24T14:01:12+03:00312017bEurope/MoscowTue, 24 Oct 2017 14:01:12 +0300 2017, 14:01:12

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132