#include "flutter/shell/platform/linux/fl_task_runner.h"#include "flutter/shell/platform/linux/fl_engine_private.h"Go to the source code of this file.
Classes | |
| struct | _FlTaskRunner |
| struct | _FlTaskRunnerTask |
Typedefs | |
| typedef struct _FlTaskRunnerTask | FlTaskRunnerTask |
Functions | |
| static void | fl_task_runner_process_expired_tasks_locked (FlTaskRunner *self) |
| static void | fl_task_runner_tasks_did_change_locked (FlTaskRunner *self) |
| static gboolean | fl_task_runner_on_expired_timeout (gpointer data) |
| static gint64 | fl_task_runner_next_task_expiration_time_locked (FlTaskRunner *self) |
| void | fl_task_runner_dispose (GObject *object) |
| static void | fl_task_runner_class_init (FlTaskRunnerClass *klass) |
| static void | fl_task_runner_init (FlTaskRunner *self) |
| FlTaskRunner * | fl_task_runner_new (FlEngine *engine) |
| void | fl_task_runner_post_flutter_task (FlTaskRunner *self, FlutterTask task, uint64_t target_time_nanos) |
| void | fl_task_runner_wait (FlTaskRunner *self) |
| void | fl_task_runner_stop_wait (FlTaskRunner *self) |
Variables | |
| static constexpr int | kMicrosecondsPerNanosecond = 1000 |
| static constexpr int | kMillisecondsPerMicrosecond = 1000 |
| typedef struct _FlTaskRunnerTask FlTaskRunnerTask |
|
static |
Definition at line 138 of file fl_task_runner.cc.
References fl_task_runner_dispose().
| void fl_task_runner_dispose | ( | GObject * | object | ) |
Definition at line 123 of file fl_task_runner.cc.
References self.
Referenced by fl_task_runner_class_init().
|
static |
Definition at line 142 of file fl_task_runner.cc.
References self.
| FlTaskRunner * fl_task_runner_new | ( | FlEngine * | engine | ) |
fl_task_runner_new: @engine: the #FlEngine owning the task runner.
Creates new task runner instance.
Returns: an #FlTaskRunner.
Definition at line 147 of file fl_task_runner.cc.
Referenced by fl_engine_init(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
static |
Definition at line 96 of file fl_task_runner.cc.
References self, and _FlTaskRunnerTask::task_time_micros.
Referenced by fl_task_runner_tasks_did_change_locked(), and fl_task_runner_wait().
|
static |
Definition at line 75 of file fl_task_runner.cc.
References data, fl_task_runner_process_expired_tasks_locked(), fl_task_runner_tasks_did_change_locked(), g_autoptr(), and self.
Referenced by fl_task_runner_tasks_did_change_locked().
| void fl_task_runner_post_flutter_task | ( | FlTaskRunner * | task_runner, |
| FlutterTask | task, | ||
| uint64_t | target_time_nanos | ||
| ) |
fl_task_runner_post_flutter_task: @task_runner: an #FlTaskRunner. @task: Flutter task being scheduled @target_time_nanos: absolute time in nanoseconds
Posts a Flutter task to be executed on main thread. This function is thread safe and may be called from any thread.
Definition at line 154 of file fl_task_runner.cc.
References fl_task_runner_tasks_did_change_locked(), g_autoptr(), kMicrosecondsPerNanosecond, self, _FlTaskRunnerTask::task, and _FlTaskRunnerTask::task_time_micros.
Referenced by fl_engine_post_task().
|
static |
Definition at line 36 of file fl_task_runner.cc.
References engine, fl_engine_execute_task(), g_autoptr(), self, _FlTaskRunnerTask::task, and _FlTaskRunnerTask::task_time_micros.
Referenced by fl_task_runner_on_expired_timeout(), and fl_task_runner_wait().
| void fl_task_runner_stop_wait | ( | FlTaskRunner * | self | ) |
fl_task_runner_stop_wait: @task_runner: an #FlTaskRunner.
Cause fl_task_runner_wait() to complete. May be called even if fl_task_runner_wait() is not being used.
May be called by any thread.
Definition at line 182 of file fl_task_runner.cc.
References self.
|
static |
Definition at line 108 of file fl_task_runner.cc.
References fl_task_runner_next_task_expiration_time_locked(), fl_task_runner_on_expired_timeout(), kMillisecondsPerMicrosecond, and self.
Referenced by fl_task_runner_on_expired_timeout(), fl_task_runner_post_flutter_task(), and fl_task_runner_wait().
| void fl_task_runner_wait | ( | FlTaskRunner * | task_runner | ) |
fl_task_runner_wait: @task_runner: an #FlTaskRunner.
Block until the next task is ready and then perform it. May be interrupted by fl_task_runner_stop_wait(), in which case no task is run but execution will be returned to the caller.
Must be called only by the GTK thread.
Definition at line 172 of file fl_task_runner.cc.
References fl_task_runner_next_task_expiration_time_locked(), fl_task_runner_process_expired_tasks_locked(), fl_task_runner_tasks_did_change_locked(), g_autoptr(), and self.
Referenced by fl_compositor_opengl_render(), and fl_compositor_software_render().
|
staticconstexpr |
Definition at line 8 of file fl_task_runner.cc.
Referenced by fl_task_runner_post_flutter_task().
|
staticconstexpr |
Definition at line 9 of file fl_task_runner.cc.
Referenced by fl_task_runner_tasks_did_change_locked().