v8
7.0.276 (node 11.14.0)
V8 is Google's open source JavaScript engine
|
Namespaces | |
tracing | |
Enumerations | |
enum class | IdleTaskSupport { kDisabled , kEnabled } |
enum class | InProcessStackDumping { kDisabled , kEnabled } |
enum class | MessageLoopBehavior : bool { kDoNotWait = false , kWaitForWork = true } |
|
strong |
Enumerator | |
---|---|
kDisabled | |
kEnabled |
Definition at line 16 of file libplatform.h.
|
strong |
Enumerator | |
---|---|
kDisabled | |
kEnabled |
Definition at line 17 of file libplatform.h.
|
strong |
Enumerator | |
---|---|
kDoNotWait | |
kWaitForWork |
Definition at line 19 of file libplatform.h.
V8_PLATFORM_EXPORT std::unique_ptr<v8::Platform> v8::platform::NewDefaultPlatform | ( | int | thread_pool_size = 0 , |
IdleTaskSupport | idle_task_support = IdleTaskSupport::kDisabled , |
||
InProcessStackDumping | in_process_stack_dumping = InProcessStackDumping::kDisabled , |
||
std::unique_ptr< v8::TracingController > | tracing_controller = {} |
||
) |
Returns a new instance of the default v8::Platform implementation.
The caller will take ownership of the returned pointer. |thread_pool_size| is the number of worker threads to allocate for background jobs. If a value of zero is passed, a suitable default based on the current number of processors online will be chosen. If |idle_task_support| is enabled then the platform will accept idle tasks (IdleTasksEnabled will return true) and will rely on the embedder calling v8::platform::RunIdleTasks to process the idle tasks. If |tracing_controller| is nullptr, the default platform will create a v8::platform::TracingController instance and use it.
V8_PLATFORM_EXPORT bool v8::platform::PumpMessageLoop | ( | v8::Platform * | platform, |
v8::Isolate * | isolate, | ||
MessageLoopBehavior | behavior = MessageLoopBehavior::kDoNotWait |
||
) |
Pumps the message loop for the given isolate.
The caller has to make sure that this is called from the right thread. Returns true if a task was executed, and false otherwise. Unless requested through the |behavior| parameter, this call does not block if no task is pending. The |platform| has to be created using |NewDefaultPlatform|.
V8_PLATFORM_EXPORT void v8::platform::RunIdleTasks | ( | v8::Platform * | platform, |
v8::Isolate * | isolate, | ||
double | idle_time_in_seconds | ||
) |
Runs pending idle tasks for at most |idle_time_in_seconds| seconds.
The caller has to make sure that this is called from the right thread. This call does not block if no task is pending. The |platform| has to be created using |NewDefaultPlatform|.
V8_PLATFORM_EXPORT v8::platform::V8_DEPRECATE_SOON | ( | "Access the DefaultPlatform directly" | , |
void | SetTracingControllerv8::Platform *platform, v8::platform::tracing::TracingController *tracing_controller | ||
) |
Attempts to set the tracing controller for the given platform.
The |platform| has to be created using |NewDefaultPlatform|.
V8_PLATFORM_EXPORT v8::platform::V8_DEPRECATE_SOON | ( | "Use NewDefaultPlatform instead" | , |
v8::Platform * | CreateDefaultPlatformint thread_pool_size=0, IdleTaskSupport idle_task_support=IdleTaskSupport::kDisabled, InProcessStackDumping in_process_stack_dumping=InProcessStackDumping::kDisabled, v8::TracingController *tracing_controller=nullptr | ||
) |