| Index: runtime/include/dart_api.h
|
| diff --git a/runtime/include/dart_api.h b/runtime/include/dart_api.h
|
| index 2746d8d176ca98a178685f85b202169f3fb2ee20..20e8ea278f9d090da8ea99f15a119e2a6ba40cd2 100755
|
| --- a/runtime/include/dart_api.h
|
| +++ b/runtime/include/dart_api.h
|
| @@ -1078,6 +1078,76 @@ DART_EXPORT void Dart_SetMessageNotifyCallback(
|
| * is impossible to mess up. */
|
|
|
| /**
|
| + * The VM's default message handler supports pausing an isolate before it starts
|
| + * and before it exits. This is controlled by two VM flags:
|
| + *
|
| + * `--pause-isolates-on-start`
|
| + * `--pause-isolates-on-exit`
|
| + *
|
| + * When an embedder is using a Dart_MessageNotifyCallback the following
|
| + * functions can be used to implement pausing on start and exit.
|
| + */
|
| +
|
| +/**
|
| + * If the VM flag `--pause-isolates-on-start` was passed this will be true.
|
| + *
|
| + * \return A boolean value indicating if pause on start was requested.
|
| + */
|
| +DART_EXPORT bool Dart_ShouldPauseOnStart();
|
| +
|
| +/**
|
| + * Override the VM flag `--pause-isolates-on-start` for the current isolate.
|
| + *
|
| + * NOTE: This must be called before Dart_IsolateMakeRunnable.
|
| + */
|
| +DART_EXPORT void Dart_SetShouldPauseOnStart(bool value);
|
| +
|
| +/**
|
| + * Is the current isolate paused on start?
|
| + *
|
| + * \return A boolean value indicating if the isolate is paused on start.
|
| + */
|
| +DART_EXPORT bool Dart_IsPausedOnStart();
|
| +
|
| +/**
|
| + * Called when the embedder has paused the current isolate on start and when
|
| + * the embedder has released the isolate.
|
| + *
|
| + * \return A boolean value indicating if the isolate is paused on start.
|
| + */
|
| +DART_EXPORT void Dart_SetPausedOnStart(bool value);
|
| +
|
| +/**
|
| + * If the VM flag `--pause-isolates-on-exit` was passed this will be true.
|
| + *
|
| + * \return A boolean value indicating if pause on start was requested.
|
| + */
|
| +DART_EXPORT bool Dart_ShouldPauseOnExit();
|
| +
|
| +/**
|
| + * Override the VM flag `--pause-isolates-on-start` for the current isolate.
|
| + *
|
| + * NOTE: This must be called before Dart_IsolateMakeRunnable.
|
| + */
|
| +DART_EXPORT void Dart_SetShouldPauseOnExit(bool value);
|
| +
|
| +/**
|
| + * Is the current isolate paused on exit?
|
| + *
|
| + * \return A boolean value indicating if the isolate is paused on start.
|
| + */
|
| +DART_EXPORT bool Dart_IsPausedOnExit();
|
| +
|
| +/**
|
| + * Called when the embedder has paused the current isolate on start and when
|
| + * the embedder has released the isolate.
|
| + *
|
| + * \return A boolean value indicating if the isolate is paused on start.
|
| + */
|
| +DART_EXPORT void Dart_SetPausedOnExit(bool value);
|
| +
|
| +
|
| +/**
|
| * Handles the next pending message for the current isolate.
|
| *
|
| * May generate an unhandled exception error.
|
| @@ -1087,6 +1157,15 @@ DART_EXPORT void Dart_SetMessageNotifyCallback(
|
| DART_EXPORT Dart_Handle Dart_HandleMessage();
|
|
|
| /**
|
| + * Handles all pending messages for the current isolate.
|
| + *
|
| + * May generate an unhandled exception error.
|
| + *
|
| + * \return A valid handle if no error occurs during the operation.
|
| + */
|
| +DART_EXPORT Dart_Handle Dart_HandleMessages();
|
| +
|
| +/**
|
| * Handles any pending messages for the vm service for the current
|
| * isolate.
|
| *
|
|
|