Flutter Engine
The Flutter Engine
|
#include <embedder_task_runner.h>
Classes | |
struct | DispatchTable |
A. More... | |
Public Member Functions | |
EmbedderTaskRunner (DispatchTable table, size_t embedder_identifier) | |
Create a task runner with a dispatch table for delegation of task runner responsibility to the embedder. When embedders specify task runner dispatch tables that service tasks on the same thread, they also must ensure that their embedder_idetifier s match. This allows the engine to determine task runner equality without actually posting tasks to the task runner. | |
~EmbedderTaskRunner () override | |
size_t | GetEmbedderIdentifier () const |
The unique identifier provided by the embedder for the task runner. Embedders whose dispatch tables service tasks on the same underlying OS thread must ensure that their identifiers match. This allows the engine to determine task runner equality without posting tasks on the thread. | |
bool | PostTask (uint64_t baton) |
Public Member Functions inherited from fml::TaskRunner | |
virtual | ~TaskRunner () |
Public Member Functions inherited from fml::RefCountedThreadSafe< TaskRunner > | |
void | Release () const |
Public Member Functions inherited from fml::internal::RefCountedThreadSafeBase | |
void | AddRef () const |
bool | HasOneRef () const |
void | AssertHasOneRef () const |
Private Member Functions | |
void | PostTask (const fml::closure &task) override |
void | PostTaskForTime (const fml::closure &task, fml::TimePoint target_time) override |
void | PostDelayedTask (const fml::closure &task, fml::TimeDelta delay) override |
bool | RunsTasksOnCurrentThread () override |
fml::TaskQueueId | GetTaskQueueId () override |
Additional Inherited Members | |
Static Public Member Functions inherited from fml::TaskRunner | |
static void | RunNowOrPostTask (const fml::RefPtr< fml::TaskRunner > &runner, const fml::closure &task) |
Protected Member Functions inherited from fml::TaskRunner | |
TaskRunner (fml::RefPtr< MessageLoopImpl > loop) | |
Protected Member Functions inherited from fml::RefCountedThreadSafe< TaskRunner > | |
RefCountedThreadSafe () | |
~RefCountedThreadSafe () | |
Protected Member Functions inherited from fml::internal::RefCountedThreadSafeBase | |
RefCountedThreadSafeBase () | |
~RefCountedThreadSafeBase () | |
bool | Release () const |
void | Adopt () |
A task runner which delegates responsibility of task execution to an embedder. This is done by managing a dispatch table to the embedder.
Definition at line 20 of file embedder_task_runner.h.
flutter::EmbedderTaskRunner::EmbedderTaskRunner | ( | DispatchTable | table, |
size_t | embedder_identifier | ||
) |
Create a task runner with a dispatch table for delegation of task runner responsibility to the embedder. When embedders specify task runner dispatch tables that service tasks on the same thread, they also must ensure that their embedder_idetifier
s match. This allows the engine to determine task runner equality without actually posting tasks to the task runner.
[in] | table | The task runner dispatch table. |
[in] | embedder_identifier | The embedder identifier |
Definition at line 12 of file embedder_task_runner.cc.
|
overridedefault |
size_t flutter::EmbedderTaskRunner::GetEmbedderIdentifier | ( | ) | const |
The unique identifier provided by the embedder for the task runner. Embedders whose dispatch tables service tasks on the same underlying OS thread must ensure that their identifiers match. This allows the engine to determine task runner equality without posting tasks on the thread.
Definition at line 25 of file embedder_task_runner.cc.
|
overrideprivatevirtual |
Returns the unique identifier associated with the TaskRunner.
Reimplemented from fml::TaskRunner.
Definition at line 82 of file embedder_task_runner.cc.
|
overrideprivatevirtual |
Schedules a task to be run on the MessageLoop after the time delay
has passed.
Reimplemented from fml::TaskRunner.
Definition at line 51 of file embedder_task_runner.cc.
|
overrideprivatevirtual |
Schedules task
to be executed on the TaskRunner's associated event loop.
Reimplemented from fml::TaskRunner.
Definition at line 29 of file embedder_task_runner.cc.
bool flutter::EmbedderTaskRunner::PostTask | ( | uint64_t | baton | ) |
Definition at line 60 of file embedder_task_runner.cc.
|
overrideprivatevirtual |
Reimplemented from fml::TaskRunner.
Definition at line 33 of file embedder_task_runner.cc.
|
overrideprivatevirtual |
Returns true
when the current executing thread's TaskRunner matches this instance.
Reimplemented from fml::TaskRunner.
Definition at line 56 of file embedder_task_runner.cc.