mirror of
https://github.com/dart-lang/sdk
synced 2024-10-06 15:19:41 +00:00
0d501ad53d
This change add the ability to restart the vm through the service protocol. All isolates are killed, and then the main isolate is restarted cooperatively by the embedder. This change also fixes the message handler to prevent it from accidentally ignoring vm shutdown messages. Previously, we would stop handling messages whenever we hit an error (such as a compile error or an unhandled exception). This would leave shutdown requests sitting the oob queue, neglected. We now process *all* oob requests, up to the first shutdown request. When we hit a shutdown request, we clear the oob queue and process no more messages. To make all of this work, we had to change the return value of HandleMessage from bool to a new enum type, allowing the message handler to distinguish *normal* error cases from the more rarified shutdown and restart cases. R=johnmccutchan@google.com, zra@google.com Review URL: https://codereview.chromium.org/1371193005 . |
||
---|---|---|
.. | ||
bin | ||
include | ||
lib | ||
observatory | ||
platform | ||
tests/vm | ||
third_party/double-conversion | ||
tools | ||
vm | ||
.gitignore | ||
BUILD.gn | ||
codereview.settings | ||
CPPLINT.cfg | ||
dart-runtime.gyp | ||
PRESUBMIT.py |