OLD | NEW |
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include "vm/os_thread.h" | 5 #include "vm/os_thread.h" |
6 | 6 |
7 #include "vm/atomic.h" | 7 #include "vm/atomic.h" |
8 #include "vm/lockers.h" | 8 #include "vm/lockers.h" |
9 #include "vm/log.h" | 9 #include "vm/log.h" |
10 #include "vm/thread_interrupter.h" | 10 #include "vm/thread_interrupter.h" |
| 11 #include "vm/timeline.h" |
11 | 12 |
12 namespace dart { | 13 namespace dart { |
13 | 14 |
14 // The single thread local key which stores all the thread local data | 15 // The single thread local key which stores all the thread local data |
15 // for a thread. | 16 // for a thread. |
16 ThreadLocalKey OSThread::thread_key_ = kUnsetThreadLocalKey; | 17 ThreadLocalKey OSThread::thread_key_ = kUnsetThreadLocalKey; |
17 OSThread* OSThread::thread_list_head_ = NULL; | 18 OSThread* OSThread::thread_list_head_ = NULL; |
18 Mutex* OSThread::thread_list_lock_ = NULL; | 19 Mutex* OSThread::thread_list_lock_ = NULL; |
19 bool OSThread::creation_enabled_ = false; | 20 bool OSThread::creation_enabled_ = false; |
20 | 21 |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
270 | 271 |
271 OSThread* OSThreadIterator::Next() { | 272 OSThread* OSThreadIterator::Next() { |
272 ASSERT(OSThread::thread_list_lock_ != NULL); | 273 ASSERT(OSThread::thread_list_lock_ != NULL); |
273 ASSERT(OSThread::thread_list_lock_->IsOwnedByCurrentThread()); | 274 ASSERT(OSThread::thread_list_lock_->IsOwnedByCurrentThread()); |
274 OSThread* current = next_; | 275 OSThread* current = next_; |
275 next_ = next_->thread_list_next_; | 276 next_ = next_->thread_list_next_; |
276 return current; | 277 return current; |
277 } | 278 } |
278 | 279 |
279 } // namespace dart | 280 } // namespace dart |
OLD | NEW |