9 #include "flutter/fml/logging.h"
12 fml::RefPtr<fml::TaskRunner> _taskRunner;
15 - (instancetype)initWithTaskRunner:(
fml::RefPtr<
fml::TaskRunner>)task_runner {
16 FML_DCHECK(task_runner);
17 if (
self = [super init]) {
18 _taskRunner = std::move(task_runner);
23 - (void)postTask:(
void (^)(
void))task {
25 _taskRunner->PostTask([task]() { task(); });
28 - (void)runNowOrPostTask:(
void (^)(
void))task {
30 fml::TaskRunner::RunNowOrPostTask(_taskRunner, [task]() { task(); });
33 - (void)postTaskWithDelay:(NSTimeInterval)delay task:(
void (^)(
void))task {
35 _taskRunner->PostDelayedTask([task]() { task(); }, fml::TimeDelta::FromSecondsF(delay));
38 - (BOOL)runsTasksOnCurrentThread {
39 return _taskRunner->RunsTasksOnCurrentThread();
42 - (
fml::RefPtr<fml::TaskRunner>)taskRunner {