#include <message_loop.h>
Public Member Functions | |
| void | Run () |
| void | Terminate () |
| void | AddTaskObserver (intptr_t key, const fml::closure &callback) |
| void | RemoveTaskObserver (intptr_t key) |
| fml::RefPtr< fml::TaskRunner > | GetTaskRunner () const |
| void | RunExpiredTasksNow () |
| ~MessageLoop () | |
Static Public Member Functions | |
| static FML_EMBEDDER_ONLY MessageLoop & | GetCurrent () |
| static void | EnsureInitializedForCurrentThread () |
| static bool | IsInitializedForCurrentThread () |
| static TaskQueueId | GetCurrentTaskQueueId () |
Friends | |
| class | TaskRunner |
| class | MessageLoopImpl |
An event loop associated with a thread.
This class is the generic front-end to the MessageLoop, differences in implementation based on the running platform are in the subclasses of flutter::MessageLoopImpl (ex flutter::MessageLoopAndroid).
For scheduling events on the message loop see flutter::TaskRunner.
Definition at line 28 of file message_loop.h.
|
default |
| void fml::MessageLoop::AddTaskObserver | ( | intptr_t | key, |
| const fml::closure & | callback | ||
| ) |
Definition at line 64 of file message_loop.cc.
Referenced by FlutterEngineInitialize(), and flutter::RunTester().
|
static |
Definition at line 27 of file message_loop.cc.
References fml::tls_message_loop.
Referenced by flutter::AndroidShellHolder::AndroidShellHolder(), FLUTTER_ASSERT_ARC::GetCurrentTaskRunner(), flutter::GetCurrentThreadTaskRunner(), flutter::testing::GetTaskRunnersForFixture(), flutter::testing::GetThreadMergerFromPlatformThread(), flutter::testing::GetThreadMergerFromRasterThread(), main(), flutter::NativeActivity::NativeActivity(), impeller::testing::RendererDartTest::RendererDartTest(), flutter::RunTester(), fml::testing::TaskQueueWrapper::TaskQueueWrapper(), flutter::testing::android::TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), flutter::TEST(), flutter::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), flutter_runner::TEST(), flutter::testing::TEST(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), and fml::Thread::Thread().
|
static |
Definition at line 19 of file message_loop.cc.
References FML_CHECK, and fml::tls_message_loop.
Referenced by __FlutterEngineFlushPendingTasksNow(), fml::MessageLoopImpl::AddTaskObserver(), flutter::AndroidShellHolder::AndroidShellHolder(), flutter::ScriptCompletionTaskObserver::DidProcessTask(), FlutterEngineInitialize(), FLUTTER_ASSERT_ARC::GetCurrentTaskRunner(), flutter::GetCurrentThreadTaskRunner(), flutter::testing::GetTaskRunnersForFixture(), fml::Thread::Join(), main(), fml::MessageLoopImpl::RemoveTaskObserver(), impeller::testing::RendererDartTest::RendererDartTest(), flutter::RunTester(), fml::testing::TaskQueueWrapper::TaskQueueWrapper(), flutter::testing::android::TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), flutter::TEST(), flutter::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), flutter_runner::TEST(), flutter::testing::TEST(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), and fml::Thread::Thread().
|
static |
Gets the unique identifier for the TaskQueue associated with the current thread.
Definition at line 76 of file message_loop.cc.
References FML_CHECK, and fml::tls_message_loop.
Referenced by flutter::testing::ShellTest::CreateSettingsForFixture(), FlutterDartProject::defaultBundleIdentifier, flutter::testing::GetThreadMergerFromPlatformThread(), flutter::testing::GetThreadMergerFromRasterThread(), fml::RasterThreadMerger::IsOnPlatformThread(), main(), fml::TaskRunnerChecker::RunsOnCreationTaskRunner(), fml::TaskRunner::RunsTasksOnCurrentThread(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), and flutter::testing::TestSkObject::~TestSkObject().
| fml::RefPtr< fml::TaskRunner > fml::MessageLoop::GetTaskRunner | ( | ) | const |
Definition at line 56 of file message_loop.cc.
Referenced by flutter::AndroidShellHolder::AndroidShellHolder(), FLUTTER_ASSERT_ARC::GetCurrentTaskRunner(), flutter::GetCurrentThreadTaskRunner(), fml::testing::TaskQueueWrapper::GetTaskQueueId(), main(), impeller::testing::RendererDartTest::RendererDartTest(), flutter::RunTester(), flutter::testing::android::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), flutter_runner::TEST(), flutter::testing::TEST(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), and flutter::testing::TEST_F().
|
static |
Returns true if EnsureInitializedForCurrentThread has been called on this thread already.
Definition at line 35 of file message_loop.cc.
References fml::tls_message_loop.
Referenced by fml::TaskRunnerChecker::RunsOnCreationTaskRunner(), and fml::TaskRunner::RunsTasksOnCurrentThread().
| void fml::MessageLoop::RemoveTaskObserver | ( | intptr_t | key | ) |
Definition at line 68 of file message_loop.cc.
References key.
Referenced by FlutterEngineInitialize(), and flutter::RunTester().
| void fml::MessageLoop::Run | ( | ) |
Definition at line 48 of file message_loop.cc.
Referenced by main(), flutter::RunTester(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), and fml::testing::TEST().
| void fml::MessageLoop::RunExpiredTasksNow | ( | ) |
Definition at line 72 of file message_loop.cc.
Referenced by __FlutterEngineFlushPendingTasksNow(), fml::testing::TEST(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), flutter::testing::TEST_F(), and flutter::testing::TEST_F().
| void fml::MessageLoop::Terminate | ( | ) |
Definition at line 52 of file message_loop.cc.
Referenced by flutter::ScriptCompletionTaskObserver::DidProcessTask(), fml::Thread::Join(), TEST(), TEST(), TEST(), TEST(), fml::testing::TEST(), fml::testing::TEST(), fml::testing::TEST(), and fml::testing::TEST().
|
friend |
Definition at line 62 of file message_loop.h.
|
friend |
Definition at line 61 of file message_loop.h.