v8  5.5.372(node7.10.1)
V8 is Google's open source JavaScript engine
MicrotasksScope Class Reference

#include <v8.h>

Public Types

enum  Type { kRunMicrotasks, kDoNotRunMicrotasks }

Public Member Functions

 MicrotasksScope (Isolate *isolate, Type type)
 ~MicrotasksScope ()
 MicrotasksScope (const MicrotasksScope &)=delete
MicrotasksScopeoperator= (const MicrotasksScope &)=delete

Static Public Member Functions

static void PerformCheckpoint (Isolate *isolate)
static int GetCurrentDepth (Isolate *isolate)
static bool IsRunningMicrotasks (Isolate *isolate)

Detailed Description

This scope is used to control microtasks when kScopeMicrotasksInvocation is used on Isolate. In this mode every non-primitive call to V8 should be done inside some MicrotasksScope. Microtasks are executed when topmost MicrotasksScope marked as kRunMicrotasks exits. kDoNotRunMicrotasks should be used to annotate calls not intended to trigger microtasks.

Definition at line 5822 of file v8.h.

Member Enumeration Documentation

enum Type

Definition at line 5824 of file v8.h.

Constructor & Destructor Documentation

MicrotasksScope ( Isolate isolate,
Type  type 
MicrotasksScope ( const MicrotasksScope )

Member Function Documentation

static int GetCurrentDepth ( Isolate isolate)

Returns current depth of nested kRunMicrotasks scopes.

static bool IsRunningMicrotasks ( Isolate isolate)

Returns true while microtasks are being executed.

MicrotasksScope& operator= ( const MicrotasksScope )
static void PerformCheckpoint ( Isolate isolate)

Runs microtasks if no kRunMicrotasks scope is currently active.

The documentation for this class was generated from the following file: