v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <v8threads.h>
Public Member Functions | |
void | Lock () |
void | Unlock () |
void | ArchiveThread () |
bool | RestoreThread () |
void | FreeThreadResources () |
bool | IsArchived () |
void | Iterate (ObjectVisitor *v) |
void | IterateArchivedThreads (ThreadVisitor *v) |
bool | IsLockedByCurrentThread () |
ThreadId | CurrentId () |
void | TerminateExecution (ThreadId thread_id) |
ThreadState * | FirstThreadStateInUse () |
ThreadState * | GetFreeThreadState () |
Friends | |
class | Isolate |
class | ThreadState |
Definition at line 90 of file v8threads.h.
void ArchiveThread | ( | ) |
Definition at line 313 of file v8threads.cc.
References ASSERT, ThreadId::Current(), ThreadManager::CurrentId(), ThreadManager::GetFreeThreadState(), ThreadState::id(), ThreadId::Invalid(), ThreadManager::IsArchived(), ThreadManager::IsLockedByCurrentThread(), ThreadState::set_id(), and ThreadState::Unlink().
Referenced by Locker::~Locker().
ThreadId CurrentId | ( | ) |
Definition at line 394 of file v8threads.cc.
References ThreadId::Current().
Referenced by ThreadManager::ArchiveThread().
ThreadState * FirstThreadStateInUse | ( | ) |
Definition at line 271 of file v8threads.cc.
References ThreadState::Next().
Referenced by Deserializer::Deserialize(), ThreadManager::Iterate(), ThreadManager::IterateArchivedThreads(), StartupSerializer::SerializeStrongReferences(), and ThreadManager::TerminateExecution().
void FreeThreadResources | ( | ) |
Definition at line 351 of file v8threads.cc.
References Isolate::bootstrapper(), RegExpStack::FreeThreadResources(), Bootstrapper::FreeThreadResources(), StackGuard::FreeThreadResources(), HandleScopeImplementer::FreeThreadResources(), Isolate::FreeThreadResources(), Isolate::handle_scope_implementer(), Isolate::regexp_stack(), and Isolate::stack_guard().
Referenced by Locker::~Locker().
ThreadState * GetFreeThreadState | ( | ) |
Definition at line 259 of file v8threads.cc.
References ThreadManager::ThreadState.
Referenced by ThreadManager::ArchiveThread().
bool IsArchived | ( | ) |
Definition at line 363 of file v8threads.cc.
References Isolate::FindPerThreadDataForThisThread(), and v8::internal::NULL.
Referenced by ThreadManager::ArchiveThread().
|
inline |
Definition at line 102 of file v8threads.h.
References ThreadId::Current().
Referenced by ThreadManager::ArchiveThread(), HandleScope::Initialize(), Locker::IsLocked(), ThreadManager::Lock(), ThreadManager::RestoreThread(), Locker::~Locker(), and Unlocker::~Unlocker().
void Iterate | ( | ObjectVisitor * | v | ) |
Definition at line 370 of file v8threads.cc.
References ThreadState::data(), ThreadManager::FirstThreadStateInUse(), HandleScopeImplementer::Iterate(), Isolate::Iterate(), ThreadState::Next(), and v8::internal::NULL.
Referenced by Heap::IterateStrongRoots().
void IterateArchivedThreads | ( | ThreadVisitor * | v | ) |
Definition at line 383 of file v8threads.cc.
References HandleScopeImplementer::ArchiveSpacePerThread(), ThreadState::data(), ThreadManager::FirstThreadStateInUse(), Isolate::IterateThread(), ThreadState::Next(), and v8::internal::NULL.
void Lock | ( | ) |
Definition at line 196 of file v8threads.cc.
References ASSERT, ThreadId::Current(), and ThreadManager::IsLockedByCurrentThread().
Referenced by Unlocker::~Unlocker().
bool RestoreThread | ( | ) |
Definition at line 139 of file v8threads.cc.
References ASSERT, Isolate::bootstrapper(), ThreadId::Current(), ThreadState::data(), Isolate::FindPerThreadDataForThisThread(), ThreadState::FREE_LIST, Isolate::handle_scope_implementer(), StackGuard::InitThread(), ThreadId::Invalid(), ThreadManager::IsLockedByCurrentThread(), ThreadState::LinkInto(), v8::internal::NULL, Isolate::regexp_stack(), RegExpStack::RestoreStack(), StackGuard::RestoreStackGuard(), Bootstrapper::RestoreState(), HandleScopeImplementer::RestoreThread(), Isolate::RestoreThread(), ThreadState::set_id(), ThreadState::set_terminate_on_restore(), Isolate::stack_guard(), ThreadState::terminate_on_restore(), StackGuard::TerminateExecution(), and ThreadState::Unlink().
Referenced by Unlocker::~Unlocker().
void TerminateExecution | ( | ThreadId | thread_id | ) |
Definition at line 399 of file v8threads.cc.
References ThreadManager::FirstThreadStateInUse(), ThreadState::id(), ThreadState::Next(), v8::internal::NULL, and ThreadState::set_terminate_on_restore().
void Unlock | ( | ) |
Definition at line 203 of file v8threads.cc.
References ThreadId::Invalid().
Referenced by Locker::~Locker().
|
friend |
Definition at line 137 of file v8threads.h.
|
friend |
Definition at line 138 of file v8threads.h.
Referenced by ThreadManager::GetFreeThreadState().