Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | List of all members
dart::GcWithoutDeoptTask Class Reference
Inheritance diagram for dart::GcWithoutDeoptTask:
dart::StateMachineTask dart::ThreadPool::Task dart::IntrusiveDListEntry< Task >

Public Types

enum  State { kStartSafepointOperation = StateMachineTask::kNext , kEndSafepointOperation , kJoinDeoptOperation , kDeoptOperationDone }
 
- Public Types inherited from dart::StateMachineTask
enum  State {
  kInitialized = 0 , kEntered , kPleaseExit , kExited ,
  kNext
}
 

Public Member Functions

 GcWithoutDeoptTask (std::shared_ptr< Data > data)
 
- Public Member Functions inherited from dart::StateMachineTask
 StateMachineTask (std::shared_ptr< Data > data)
 
virtual void Run ()
 
- Public Member Functions inherited from dart::ThreadPool::Task
virtual ~Task ()
 
- Public Member Functions inherited from dart::IntrusiveDListEntry< Task >
 IntrusiveDListEntry ()
 
 ~IntrusiveDListEntry ()
 

Protected Member Functions

virtual void RunInternal ()
 
- Protected Member Functions inherited from dart::ThreadPool::Task
 Task ()
 

Additional Inherited Members

- Protected Attributes inherited from dart::StateMachineTask
std::shared_ptr< Datadata_
 
Threadthread_ = nullptr
 

Detailed Description

Definition at line 108 of file safepoint_test.cc.

Member Enumeration Documentation

◆ State

Enumerator
kStartSafepointOperation 
kEndSafepointOperation 
kJoinDeoptOperation 
kDeoptOperationDone 

Definition at line 110 of file safepoint_test.cc.

Constructor & Destructor Documentation

◆ GcWithoutDeoptTask()

dart::GcWithoutDeoptTask::GcWithoutDeoptTask ( std::shared_ptr< Data data)
inlineexplicit

Definition at line 117 of file safepoint_test.cc.

118 : StateMachineTask(std::move(data)) {}
StateMachineTask(std::shared_ptr< Data > data)
static int8_t data[kExtLength]

Member Function Documentation

◆ RunInternal()

virtual void dart::GcWithoutDeoptTask::RunInternal ( )
inlineprotectedvirtual

Implements dart::StateMachineTask.

Definition at line 121 of file safepoint_test.cc.

121 {
123 {
124 RuntimeCallDeoptScope no_deopt(thread_,
126 GcSafepointOperationScope safepoint_operation(thread_);
127 }
128 data_->MarkAndNotify(kEndSafepointOperation);
129
130 data_->WaitUntil(kJoinDeoptOperation);
133 data_->MarkAndNotify(kDeoptOperationDone);
134 }
#define EXPECT(type, expectedAlignment, expectedSize)
std::shared_ptr< Data > data_
bool IsSafepointRequested() const
Definition thread.h:924
void BlockForSafepoint()
Definition thread.cc:1282

The documentation for this class was generated from the following file: