mirror of
https://github.com/zebrajr/node.git
synced 2026-01-15 12:15:26 +00:00
ca363cf1ae9631cd6465c3a0028ca0af823a68fb
Commit 30e5366b ("core: Use a uv_signal for debug listener") changed
SIGUSR1 handling from a signal handler to libuv's uv_signal_*()
functionality to fix a race condition (and possible hang) in the
signal handler.
While a good change in itself, it made it impossible to interrupt
long running scripts. When a script is stuck in a busy loop, control
never returns to the event loop, which in turn means the signal
callback - and therefore the debugger - is never invoked.
This commit changes SIGUSR1 handling back to a normal signal handler
but one that treads _very_ carefully.
Evented I/O for V8 javascript.
To build:
Prerequisites (Unix only):
* GCC 4.2 or newer
* Python 2.6 or 2.7
* GNU Make 3.81 or newer
* libexecinfo (FreeBSD and OpenBSD only)
Unix/Macintosh:
./configure
make
make install
If your python binary is in a non-standard location or has a non-standard name, run the following instead:
export PYTHON=/path/to/python
$PYTHON ./configure
make
make install
Prerequisites (Windows only):
* Python 2.6 or 2.7
* Visual Studio 2010 or 2012
Windows:
vcbuild nosign
To run the tests:
Unix/Macintosh:
make test
Windows:
vcbuild test
To build the documentation:
make doc
To read the documentation:
man doc/node.1
Resources for Newcomers
Description
Languages
JavaScript
62.4%
C++
23.1%
Python
10.1%
C
2.7%
HTML
0.6%
Other
0.9%