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 #ifndef V8_LIBPLATFORM_DEFAULT_PLATFORM_H_ | 5 #ifndef V8_LIBPLATFORM_DEFAULT_PLATFORM_H_ |
6 #define V8_LIBPLATFORM_DEFAULT_PLATFORM_H_ | 6 #define V8_LIBPLATFORM_DEFAULT_PLATFORM_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <queue> | 9 #include <queue> |
10 #include <vector> | 10 #include <vector> |
(...skipping 19 matching lines...) Expand all Loading... |
30 | 30 |
31 void EnsureInitialized(); | 31 void EnsureInitialized(); |
32 | 32 |
33 bool PumpMessageLoop(v8::Isolate* isolate); | 33 bool PumpMessageLoop(v8::Isolate* isolate); |
34 | 34 |
35 // v8::Platform implementation. | 35 // v8::Platform implementation. |
36 virtual void CallOnBackgroundThread( | 36 virtual void CallOnBackgroundThread( |
37 Task* task, ExpectedRuntime expected_runtime) OVERRIDE; | 37 Task* task, ExpectedRuntime expected_runtime) OVERRIDE; |
38 virtual void CallOnForegroundThread(v8::Isolate* isolate, | 38 virtual void CallOnForegroundThread(v8::Isolate* isolate, |
39 Task* task) OVERRIDE; | 39 Task* task) OVERRIDE; |
| 40 virtual double MonotonicallyIncreasingTime() OVERRIDE; |
40 | 41 |
41 private: | 42 private: |
42 static const int kMaxThreadPoolSize; | 43 static const int kMaxThreadPoolSize; |
43 | 44 |
44 base::Mutex lock_; | 45 base::Mutex lock_; |
45 bool initialized_; | 46 bool initialized_; |
46 int thread_pool_size_; | 47 int thread_pool_size_; |
47 std::vector<WorkerThread*> thread_pool_; | 48 std::vector<WorkerThread*> thread_pool_; |
48 TaskQueue queue_; | 49 TaskQueue queue_; |
49 std::map<v8::Isolate*, std::queue<Task*> > main_thread_queue_; | 50 std::map<v8::Isolate*, std::queue<Task*> > main_thread_queue_; |
50 | 51 |
51 DISALLOW_COPY_AND_ASSIGN(DefaultPlatform); | 52 DISALLOW_COPY_AND_ASSIGN(DefaultPlatform); |
52 }; | 53 }; |
53 | 54 |
54 | 55 |
55 } } // namespace v8::platform | 56 } } // namespace v8::platform |
56 | 57 |
57 | 58 |
58 #endif // V8_LIBPLATFORM_DEFAULT_PLATFORM_H_ | 59 #endif // V8_LIBPLATFORM_DEFAULT_PLATFORM_H_ |
OLD | NEW |