Flutter Engine
The Flutter Engine
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 ()
 
virtual void Run ()=0
 
- Public Member Functions inherited from dart::IntrusiveDListEntry< Task >
 IntrusiveDListEntry ()
 
 ~IntrusiveDListEntry ()
 

Protected Member Functions

virtual void RunInternal ()
 
virtual void RunInternal ()=0
 
- 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 110 of file safepoint_test.cc.

Member Enumeration Documentation

◆ State

Enumerator
kStartSafepointOperation 
kEndSafepointOperation 
kJoinDeoptOperation 
kDeoptOperationDone 

Definition at line 112 of file safepoint_test.cc.

Constructor & Destructor Documentation

◆ GcWithoutDeoptTask()

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

Definition at line 119 of file safepoint_test.cc.

120 : 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 123 of file safepoint_test.cc.

123 {
125 {
126 RuntimeCallDeoptScope no_deopt(thread_,
128 GcSafepointOperationScope safepoint_operation(thread_);
129 }
130 data_->MarkAndNotify(kEndSafepointOperation);
131
132 data_->WaitUntil(kJoinDeoptOperation);
135 data_->MarkAndNotify(kDeoptOperationDone);
136 }
#define EXPECT(type, expectedAlignment, expectedSize)
std::shared_ptr< Data > data_
bool IsSafepointRequested() const
Definition: thread.h:937
void BlockForSafepoint()
Definition: thread.cc:1348

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