v8  3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Locker Class Reference

#include <v8.h>

Public Member Functions

 Locker (Isolate *isolate=NULL)
 
 ~Locker ()
 

Static Public Member Functions

static void StartPreemption (int every_n_ms)
 
static void StopPreemption ()
 
static bool IsLocked (Isolate *isolate=NULL)
 
static bool IsActive ()
 

Detailed Description

Definition at line 3893 of file v8.h.

Constructor & Destructor Documentation

Member Function Documentation

bool IsActive ( )
static

Returns whether v8::Locker is being used by this V8 instance.

Definition at line 97 of file v8threads.cc.

bool IsLocked ( v8::Isolate isolate = NULL)
static

Returns whether or not the locker for a given isolate, or default isolate if NULL is given, is locked by the current thread.

Definition at line 88 of file v8threads.cc.

References ThreadManager::IsLockedByCurrentThread(), NULL, and Isolate::thread_manager().

Referenced by ContextSwitcher::PreemptionReceived(), LockAndUnlockDifferentIsolatesThread::Run(), LockUnlockLockThread::Run(), ContextSwitcher::StartPreemption(), ContextSwitcher::StopPreemption(), TEST(), and THREADED_TEST().

void StartPreemption ( int  every_n_ms)
static

Start preemption.

When preemption is started, a timer is fired every n milliseconds that will switch between multiple threads that are in contention for the V8 lock.

Definition at line 142 of file v8threads.cc.

References ContextSwitcher::StartPreemption().

Referenced by Isolate::Init(), Shell::RunMain(), RegExpInterruptTest::RunTest(), ApplyInterruptTest::RunTest(), RegExpStringModificationTest::RunTest(), and TEST().

void StopPreemption ( )
static

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