0
0
mirror of https://github.com/nodejs/node.git synced 2024-12-01 16:10:02 +01:00
Cross-platform JavaScript runtime environment https://nodejs.org/
Go to file
Ben Noordhuis ca363cf1ae debugger: make busy loops SIGUSR1-interruptible
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.
2013-10-16 20:24:13 +02:00
benchmark Merge remote-tracking branch 'ry/v0.10' 2013-08-31 17:58:44 -07:00
deps mdb_v8: remove useless check 2013-10-08 13:49:22 -07:00
doc doc: crypto: document SPKAC additions 2013-10-16 09:44:46 -07:00
lib http: provide backpressure for pipeline flood 2013-10-16 11:01:33 -07:00
src debugger: make busy loops SIGUSR1-interruptible 2013-10-16 20:24:13 +02:00
test debugger: make busy loops SIGUSR1-interruptible 2013-10-16 20:24:13 +02:00
tools Merge remote-tracking branch 'ry/v0.10' 2013-08-28 10:11:17 -07:00
.gitattributes Explicitly disable cr/lf conversion for test fixtures 2011-08-10 19:59:37 +02:00
.gitignore tools: script release steps after jenkins build 2013-08-21 16:59:15 -07:00
.mailmap Update .mailmap and AUTHORS 2013-03-19 20:07:38 +01:00
android-configure build: add android support 2013-06-17 17:21:56 +02:00
AUTHORS Merge remote-tracking branch 'upstream/v0.10' 2013-09-24 16:49:01 -07:00
BSDmakefile Tell BSD users to run gmake instead. 2011-07-11 14:17:23 +02:00
ChangeLog Merge remote-tracking branch 'upstream/v0.10' 2013-09-24 16:49:01 -07:00
common.gypi build: disable some msvc compiler warnings 2013-08-01 11:53:41 +02:00
configure build: disable SSLv2 by default 2013-08-10 15:46:06 +02:00
CONTRIBUTING.md doc: clarify subsystems in CONTRIBUTING.md 2013-05-14 12:31:38 +02:00
LICENSE Merge remote-tracking branch 'upstream/v0.10' 2013-08-06 11:59:17 -07:00
Makefile build: make ninja build respect V= 2013-08-10 13:18:07 +02:00
node.gyp src: remove ObjectWrap dependency from core 2013-09-25 19:44:53 +02:00
README.md Merge remote-tracking branch 'upstream/v0.10' 2013-09-24 16:49:01 -07:00
vcbuild.bat build: vcbuild.bat fix for Visual Studio 2012 2013-05-03 11:32:32 +02:00

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