Flutter Engine
The Flutter Engine
third_party
tonic
dart_microtask_queue.h
Go to the documentation of this file.
1
// Copyright 2013 The Flutter Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
#ifndef LIB_TONIC_DART_MICROTASK_QUEUE_H_
6
#define LIB_TONIC_DART_MICROTASK_QUEUE_H_
7
8
#include <vector>
9
10
#include "third_party/dart/runtime/include/dart_api.h"
11
#include "
tonic/dart_persistent_value.h
"
12
#include "
tonic/logging/dart_error.h
"
13
14
namespace
tonic
{
15
16
class
DartMicrotaskQueue
{
17
public
:
18
DartMicrotaskQueue
();
19
~DartMicrotaskQueue
();
20
21
static
void
StartForCurrentThread
();
22
23
static
DartMicrotaskQueue
*
GetForCurrentThread
();
24
25
void
ScheduleMicrotask
(
Dart_Handle
callback
);
26
void
RunMicrotasks
();
27
void
Destroy
();
28
29
bool
HasMicrotasks
()
const
{
return
!queue_.empty(); }
30
31
DartErrorHandleType
GetLastError
();
32
33
private
:
34
typedef
std::vector<DartPersistentValue> MicrotaskQueue;
35
36
DartErrorHandleType
last_error_;
37
MicrotaskQueue queue_;
38
};
39
40
}
// namespace tonic
41
42
#endif
// LIB_TONIC_DART_MICROTASK_QUEUE_H_
tonic::DartMicrotaskQueue
Definition:
dart_microtask_queue.h:16
tonic::DartMicrotaskQueue::ScheduleMicrotask
void ScheduleMicrotask(Dart_Handle callback)
Definition:
dart_microtask_queue.cc:66
tonic::DartMicrotaskQueue::GetForCurrentThread
static DartMicrotaskQueue * GetForCurrentThread()
Definition:
dart_microtask_queue.cc:62
tonic::DartMicrotaskQueue::DartMicrotaskQueue
DartMicrotaskQueue()
Definition:
dart_microtask_queue.cc:54
tonic::DartMicrotaskQueue::RunMicrotasks
void RunMicrotasks()
Definition:
dart_microtask_queue.cc:70
tonic::DartMicrotaskQueue::HasMicrotasks
bool HasMicrotasks() const
Definition:
dart_microtask_queue.h:29
tonic::DartMicrotaskQueue::~DartMicrotaskQueue
~DartMicrotaskQueue()
tonic::DartMicrotaskQueue::StartForCurrentThread
static void StartForCurrentThread()
Definition:
dart_microtask_queue.cc:58
tonic::DartMicrotaskQueue::GetLastError
DartErrorHandleType GetLastError()
Definition:
dart_microtask_queue.cc:103
tonic::DartMicrotaskQueue::Destroy
void Destroy()
Definition:
dart_microtask_queue.cc:97
Dart_Handle
struct _Dart_Handle * Dart_Handle
Definition:
dart_api.h:258
dart_error.h
dart_persistent_value.h
callback
FlKeyEvent uint64_t FlKeyResponderAsyncCallback callback
Definition:
fl_key_channel_responder.cc:120
tonic
Definition:
image_filter.h:14
tonic::DartErrorHandleType
DartErrorHandleType
Definition:
dart_error.h:67
Generated on Sun Jun 23 2024 21:56:53 for Flutter Engine by
1.9.4