Index: src/platform-freebsd.cc |
diff --git a/src/platform-freebsd.cc b/src/platform-freebsd.cc |
index 8b83f2bd6cb1c85a34e4a3476bbe8366194b6f94..99264d2b5da7cb54b11c5a094080e47dc1d5e095 100644 |
--- a/src/platform-freebsd.cc |
+++ b/src/platform-freebsd.cc |
@@ -52,6 +52,7 @@ |
#undef MAP_TYPE |
#include "v8.h" |
+#include "v8threads.h" |
#include "platform.h" |
#include "vm-state-inl.h" |
@@ -397,31 +398,6 @@ class Thread::PlatformData : public Malloced { |
}; |
-ThreadHandle::ThreadHandle(Kind kind) { |
- data_ = new PlatformData(kind); |
-} |
- |
- |
-void ThreadHandle::Initialize(ThreadHandle::Kind kind) { |
- data_->Initialize(kind); |
-} |
- |
- |
-ThreadHandle::~ThreadHandle() { |
- delete data_; |
-} |
- |
- |
-bool ThreadHandle::IsSelf() const { |
- return pthread_equal(data_->thread_, pthread_self()); |
-} |
- |
- |
-bool ThreadHandle::IsValid() const { |
- return data_->thread_ != kNoThread; |
-} |
- |
- |
Thread::Thread(Isolate* isolate, const Options& options) |
: data_(new PlatformData), |
isolate_(isolate), |
@@ -448,8 +424,8 @@ static void* ThreadEntry(void* arg) { |
// This is also initialized by the first argument to pthread_create() but we |
// don't know which thread will run first (the original thread or the new |
// one) so we initialize it here too. |
- thread_->data_->thread_ = pthread_self(); |
- ASSERT(thread->IsValid()); |
+ thread->data()->thread_ = pthread_self(); |
+ ASSERT(thread->data()->thread_ != kNoThread); |
Thread::SetThreadLocal(Isolate::isolate_key(), thread->isolate()); |
thread->Run(); |
return NULL; |
@@ -470,13 +446,13 @@ void Thread::Start() { |
pthread_attr_setstacksize(&attr, static_cast<size_t>(stack_size_)); |
attr_ptr = &attr; |
} |
- pthread_create(&thread_handle_data()->thread_, attr_ptr, ThreadEntry, this); |
- ASSERT(IsValid()); |
+ pthread_create(&data_->thread_, attr_ptr, ThreadEntry, this); |
+ ASSERT(data_->thread_ != kNoThread); |
} |
void Thread::Join() { |
- pthread_join(thread_handle_data()->thread_, NULL); |
+ pthread_join(data_->thread_, NULL); |
} |