diff --git a/src/node.cc b/src/node.cc index 2711378d7b9918..162d1df3809901 100644 --- a/src/node.cc +++ b/src/node.cc @@ -2980,6 +2980,12 @@ MultiIsolatePlatform* CreatePlatform( } +MultiIsolatePlatform* InitializeV8Platform(int thread_pool_size) { + v8_platform.Initialize(thread_pool_size); + return v8_platform.Platform(); +} + + void FreePlatform(MultiIsolatePlatform* platform) { delete platform; } @@ -3199,8 +3205,7 @@ int Start(int argc, char** argv) { V8::SetEntropySource(crypto::EntropySource); #endif // HAVE_OPENSSL - v8_platform.Initialize( - per_process_opts->v8_thread_pool_size); + InitializeV8Platform(per_process_opts->v8_thread_pool_size); V8::Initialize(); performance::performance_v8_start = PERFORMANCE_NOW(); v8_initialized = true; diff --git a/src/node.h b/src/node.h index 580fb89ee08eee..3cfc97d4b6ad46 100644 --- a/src/node.h +++ b/src/node.h @@ -288,6 +288,7 @@ NODE_EXTERN MultiIsolatePlatform* GetMainThreadMultiIsolatePlatform(); NODE_EXTERN MultiIsolatePlatform* CreatePlatform( int thread_pool_size, v8::TracingController* tracing_controller); +MultiIsolatePlatform* InitializeV8Platform(int thread_pool_size); NODE_EXTERN void FreePlatform(MultiIsolatePlatform* platform); NODE_EXTERN void EmitBeforeExit(Environment* env); diff --git a/test/cctest/node_test_fixture.h b/test/cctest/node_test_fixture.h index 4a729be09c2d0b..775a211f54380a 100644 --- a/test/cctest/node_test_fixture.h +++ b/test/cctest/node_test_fixture.h @@ -70,9 +70,9 @@ class NodeTestFixture : public ::testing::Test { tracing_controller.reset(new v8::TracingController()); node::tracing::TraceEventHelper::SetTracingController( tracing_controller.get()); - platform.reset(new node::NodePlatform(4, nullptr)); CHECK_EQ(0, uv_loop_init(¤t_loop)); - v8::V8::InitializePlatform(platform.get()); + platform.reset(static_cast( + node::InitializeV8Platform(4))); v8::V8::Initialize(); } @@ -88,10 +88,8 @@ class NodeTestFixture : public ::testing::Test { virtual void SetUp() { allocator = ArrayBufferUniquePtr(node::CreateArrayBufferAllocator(), &node::FreeArrayBufferAllocator); - isolate_ = NewIsolate(allocator.get()); + isolate_ = NewIsolate(allocator.get(), ¤t_loop); CHECK_NE(isolate_, nullptr); - platform->RegisterIsolate(isolate_, ¤t_loop); - v8::Isolate::Initialize(isolate_, params); } virtual void TearDown() {