OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/libplatform/default-platform.h" | 5 #include "src/libplatform/default-platform.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <queue> | 8 #include <queue> |
9 | 9 |
10 #include "src/base/logging.h" | 10 #include "src/base/logging.h" |
11 #include "src/base/platform/platform.h" | 11 #include "src/base/platform/platform.h" |
| 12 #include "src/base/platform/time.h" |
12 #include "src/base/sys-info.h" | 13 #include "src/base/sys-info.h" |
13 #include "src/libplatform/worker-thread.h" | 14 #include "src/libplatform/worker-thread.h" |
14 | 15 |
15 namespace v8 { | 16 namespace v8 { |
16 namespace platform { | 17 namespace platform { |
17 | 18 |
18 | 19 |
19 v8::Platform* CreateDefaultPlatform(int thread_pool_size) { | 20 v8::Platform* CreateDefaultPlatform(int thread_pool_size) { |
20 DefaultPlatform* platform = new DefaultPlatform(); | 21 DefaultPlatform* platform = new DefaultPlatform(); |
21 platform->SetThreadPoolSize(thread_pool_size); | 22 platform->SetThreadPoolSize(thread_pool_size); |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 EnsureInitialized(); | 100 EnsureInitialized(); |
100 queue_.Append(task); | 101 queue_.Append(task); |
101 } | 102 } |
102 | 103 |
103 | 104 |
104 void DefaultPlatform::CallOnForegroundThread(v8::Isolate* isolate, Task* task) { | 105 void DefaultPlatform::CallOnForegroundThread(v8::Isolate* isolate, Task* task) { |
105 base::LockGuard<base::Mutex> guard(&lock_); | 106 base::LockGuard<base::Mutex> guard(&lock_); |
106 main_thread_queue_[isolate].push(task); | 107 main_thread_queue_[isolate].push(task); |
107 } | 108 } |
108 | 109 |
| 110 |
| 111 double DefaultPlatform::MonotonicallyIncreasingTime() { |
| 112 return base::TimeTicks::HighResolutionNow().ToInternalValue() / |
| 113 static_cast<double>(base::Time::kMicrosecondsPerSecond); |
| 114 } |
109 } } // namespace v8::platform | 115 } } // namespace v8::platform |
OLD | NEW |