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 #ifndef VM_THREAD_H_ | 5 #ifndef VM_THREAD_H_ |
6 #define VM_THREAD_H_ | 6 #define VM_THREAD_H_ |
7 | 7 |
8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
9 #include "platform/assert.h" | 9 #include "platform/assert.h" |
10 #include "vm/atomic.h" | 10 #include "vm/atomic.h" |
(...skipping 503 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
514 | 514 |
515 void CheckForSafepoint() { | 515 void CheckForSafepoint() { |
516 if (IsSafepointRequested()) { | 516 if (IsSafepointRequested()) { |
517 BlockForSafepoint(); | 517 BlockForSafepoint(); |
518 } | 518 } |
519 } | 519 } |
520 | 520 |
521 Thread* next() const { return next_; } | 521 Thread* next() const { return next_; } |
522 | 522 |
523 // Visit all object pointers. | 523 // Visit all object pointers. |
524 void VisitObjectPointers(ObjectPointerVisitor* visitor); | 524 void VisitObjectPointers(ObjectPointerVisitor* visitor, bool validate_frames); |
525 | 525 |
526 bool IsValidLocalHandle(Dart_Handle object) const; | 526 bool IsValidLocalHandle(Dart_Handle object) const; |
527 int CountLocalHandles() const; | 527 int CountLocalHandles() const; |
528 int ZoneSizeInBytes() const; | 528 int ZoneSizeInBytes() const; |
529 void UnwindScopes(uword stack_marker); | 529 void UnwindScopes(uword stack_marker); |
530 | 530 |
531 void InitVMConstants(); | 531 void InitVMConstants(); |
532 | 532 |
533 private: | 533 private: |
534 template<class T> T* AllocateReusableHandle(); | 534 template<class T> T* AllocateReusableHandle(); |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
646 // Disable thread interrupts. | 646 // Disable thread interrupts. |
647 class DisableThreadInterruptsScope : public StackResource { | 647 class DisableThreadInterruptsScope : public StackResource { |
648 public: | 648 public: |
649 explicit DisableThreadInterruptsScope(Thread* thread); | 649 explicit DisableThreadInterruptsScope(Thread* thread); |
650 ~DisableThreadInterruptsScope(); | 650 ~DisableThreadInterruptsScope(); |
651 }; | 651 }; |
652 | 652 |
653 } // namespace dart | 653 } // namespace dart |
654 | 654 |
655 #endif // VM_THREAD_H_ | 655 #endif // VM_THREAD_H_ |
OLD | NEW |