| /system/ulib/async-loop/ |
| A D | loop.c | 152 if (!loop) in async_loop_create() 158 loop->config = *config; in async_loop_create() 170 status = zx_object_wait_async(loop->timer, loop->port, KEY_CONTROL, in async_loop_create() 175 *out_loop = loop; in async_loop_create() 188 ZX_DEBUG_ASSERT(loop); in async_loop_destroy() 195 free(loop); in async_loop_destroy() 199 ZX_DEBUG_ASSERT(loop); in async_loop_shutdown() 235 ZX_DEBUG_ASSERT(loop); in async_loop_run() 343 mtx_lock(&loop->lock); in async_loop_dispatch_tasks() 738 loop->config.prologue(loop, loop->config.data); in async_loop_invoke_prologue() [all …]
|
| A D | README.md | 1 # libasync-loop and libasync-loop-cpp 3 This library provides a general-purpose thread-safe message loop 4 implementation declared in [async/loop.h](include/async/loop.h). 11 - `libasync-loop.a` provides the loop implementation itself as declared in 13 - [async-loop/loop.h](include/lib/async-loop/loop.h) 15 - `libasync-loop-cpp.a` provides C++ wrappers: 16 - [async-loop/cpp/loop.h](include/lib/async-loop/cpp/loop.h) 18 ## Using the message loop 20 `libasync-loop.a` provides a general-purpose thread-safe message loop 24 See [async/loop.h](include/async/loop.h) for details. [all …]
|
| A D | rules.mk | 6 LOCAL_INC := $(LOCAL_DIR)/include/lib/async-loop 13 MODULE_NAME := async-loop 20 $(LOCAL_DIR)/loop.c 23 MODULE_PACKAGE_INCS := $(LOCAL_INC)/loop.h 42 MODULE_NAME := async-loop-cpp 52 MODULE_PACKAGE_INCS := $(LOCAL_INC)/cpp/loop.h 56 system/ulib/async-loop \
|
| /system/utest/async-testutils/ |
| A D | test_loop_tests.cpp | 53 async::TestLoop loop; in FakeClockTimeIsCorrect() local 58 loop.RunUntilIdle(); in FakeClockTimeIsCorrect() 89 async::TestLoop loop; in TasksAreDispatched() local 103 loop.RunUntilIdle(); in TasksAreDispatched() 112 async::TestLoop loop; in SameDeadlinesDispatchInPostingOrder() local 125 loop.RunUntilIdle(); in SameDeadlinesDispatchInPostingOrder() 157 async::TestLoop loop; in NestedTasksAreDispatched() local 230 loop.RunUntilIdle(); in TasksAreCanceled() 249 loop.RunUntilIdle(); in TimeIsAdvanced() 261 loop.RunUntilIdle(); in TimeIsAdvanced() [all …]
|
| /system/ulib/async-loop/include/lib/async-loop/ |
| A D | loop.h | 32 typedef void(async_loop_callback_t)(async_loop_t* loop, void* data); 85 async_dispatcher_t* async_loop_get_dispatcher(async_loop_t* loop); 99 void async_loop_shutdown(async_loop_t* loop); 104 void async_loop_destroy(async_loop_t* loop); 119 zx_status_t async_loop_run(async_loop_t* loop, zx_time_t deadline, bool once); 128 zx_status_t async_loop_run_until_idle(async_loop_t* loop); 137 void async_loop_quit(async_loop_t* loop); 150 zx_status_t async_loop_reset_quit(async_loop_t* loop); 157 async_loop_state_t async_loop_get_state(async_loop_t* loop); 168 zx_status_t async_loop_start_thread(async_loop_t* loop, const char* name, [all …]
|
| /system/utest/async-loop/ |
| A D | loop_tests.cpp | 460 loop.Quit(); in quit_test() 483 loop.Shutdown(); in quit_test() 599 loop.Shutdown(); in wait_test() 676 loop.Shutdown(); in wait_shutdown_test() 750 loop.Shutdown(); in task_test() 803 loop.Shutdown(); in task_shutdown_test() 865 loop.Shutdown(); in receiver_shutdown_test() 991 loop.Shutdown(); in exception_test() 1004 loop.Shutdown(); in exception_shutdown_test() 1163 loop.Quit(); in threads_quit() [all …]
|
| A D | rules.mk | 15 MODULE_NAME := async-loop-test 20 system/ulib/async-loop.cpp \ 21 system/ulib/async-loop \
|
| /system/uapp/trace-example/ |
| A D | main.cpp | 16 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in main() local 17 trace::TraceProvider provider(loop.dispatcher()); in main() 21 zx::time start_time = async::Now(loop.dispatcher()); in main() 25 async::TaskClosure task([&loop, &task, &iteration, quit_time] { in main() 33 zx::time now = async::Now(loop.dispatcher()); in main() 35 loop.Quit(); in main() 40 task.PostForTime(loop.dispatcher(), now + zx::msec(200)); in main() 42 task.PostForTime(loop.dispatcher(), start_time); in main() 44 loop.Run(); in main()
|
| A D | rules.mk | 22 system/ulib/async-loop.cpp \ 23 system/ulib/async-loop \
|
| /system/core/devmgr/devhost/ |
| A D | tracing.cpp | 15 async_loop_t* loop; in devhost_start_trace_provider() local 16 zx_status_t status = async_loop_create(&kAsyncLoopConfigNoAttachToThread, &loop); in devhost_start_trace_provider() 22 status = async_loop_start_thread(loop, "devhost-tracer", nullptr); in devhost_start_trace_provider() 24 async_loop_destroy(loop); in devhost_start_trace_provider() 29 async_dispatcher_t* dispatcher = async_loop_get_dispatcher(loop); in devhost_start_trace_provider() 32 async_loop_destroy(loop); in devhost_start_trace_provider()
|
| /system/utest/memfs/ |
| A D | fidl-tests.cpp | 32 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestFidlBasic() local 33 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestFidlBasic() 58 loop.Shutdown(); in TestFidlBasic() 68 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestFidlOpenReadOnly() local 69 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestFidlOpenReadOnly() 92 loop.Shutdown(); in TestFidlOpenReadOnly() 123 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestFidlQueryFilesystem() local 124 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestFidlQueryFilesystem() 138 loop.Shutdown(); in TestFidlQueryFilesystem() 144 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestFidlQueryFilesystem() [all …]
|
| A D | memfs-tests.cpp | 29 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestMemfsNull() local 30 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestMemfsNull() 46 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestMemfsBasic() local 47 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestMemfsBasic() 94 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestMemfsLimitPages() local 95 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestMemfsLimitPages() 174 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestMemfsInstall() local 175 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestMemfsInstall() 208 loop.Shutdown(); in TestMemfsInstall() 218 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestMemfsCloseDuringAccess() local [all …]
|
| A D | vmofile-tests.cpp | 30 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in test_vmofile_basic() local 31 ASSERT_EQ(loop.StartThread(), ZX_OK); in test_vmofile_basic() 32 async_dispatcher_t* dispatcher = loop.dispatcher(); in test_vmofile_basic() 83 loop.Shutdown(); in test_vmofile_basic()
|
| /system/utest/fs-vnode/ |
| A D | teardown-tests.cpp | 104 ASSERT_EQ(loop->StartThread(), ZX_OK); in sync_start() 127 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestUnpostedTeardown() local 131 ASSERT_TRUE(sync_start(completions, &loop, &vfs)); in TestUnpostedTeardown() 156 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestPostedTeardown() local 160 ASSERT_TRUE(sync_start(completions, &loop, &vfs)); in TestPostedTeardown() 167 ASSERT_EQ(async::PostTask(loop.dispatcher(), [&]() { in TestPostedTeardown() 190 ASSERT_TRUE(sync_start(completions, &loop, &vfs)); in TestTeardownDeleteThis() 220 ASSERT_TRUE(sync_start(completions, &loop, &vfs)); in TestTeardownSlowAsyncCallback() 253 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestTeardownSlowClone() 305 ASSERT_EQ(loop.StartThread(), ZX_OK); in TestSynchronousTeardown() [all …]
|
| A D | service-tests.cpp | 80 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in TestServeDirectory() local 81 fs::SynchronousVfs vfs(loop.dispatcher()); in TestServeDirectory() 85 [&loop](zx::channel channel) { in TestServeDirectory() 86 loop.Shutdown(); in TestServeDirectory() 92 EXPECT_EQ(ZX_ERR_BAD_STATE, loop.RunUntilIdle()); in TestServeDirectory()
|
| /system/utest/runtests-utils/ |
| A D | fuchsia-test-main.cpp | 29 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in main() local 30 if (loop.StartThread() != ZX_OK) { in main() 34 if (memfs_install_at(loop.dispatcher(), runtests::kMemFsRoot) != ZX_OK) { in main()
|
| /system/uapp/trace-benchmark/ |
| A D | benchmarks.cpp | 37 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in Run() local 38 BenchmarkHandler handler(&loop, spec_->mode, spec_->buffer_size); in Run() 40 loop.StartThread("trace-engine loop", nullptr); in Run() 46 loop.Quit(); in Run() 47 loop.JoinThreads(); in Run()
|
| /system/uapp/blobfs/ |
| A D | main.cpp | 52 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in Mount() local 53 trace::TraceProvider provider(loop.dispatcher()); in Mount() 54 auto loop_quit = [&loop]() { loop.Quit(); }; in Mount() 55 if (blobfs::Mount(loop.dispatcher(), std::move(fd), *options, in Mount() 59 loop.Run(); in Mount()
|
| /system/uapp/minfs/ |
| A D | main.cpp | 42 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in Mount() local 43 trace::TraceProvider trace_provider(loop.dispatcher()); in Mount() 45 auto loop_quit = [&loop]() { loop.Quit(); }; in Mount() 47 if ((status = MountAndServe(&options, loop.dispatcher(), std::move(bc), zx::channel(h), in Mount() 59 loop.Run(); in Mount()
|
| /system/utest/fs/ |
| A D | main.cpp | 78 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in main() local 79 if (loop.StartThread() != ZX_OK) { in main() 83 if (memfs_install_at(loop.dispatcher(), kTmpfsPath) != ZX_OK) { in main()
|
| /system/utest/fzl/ |
| A D | fdio.cpp | 23 async::Loop loop(&kAsyncLoopConfigNoAttachToThread); in fdio_call_io() local 24 ASSERT_EQ(loop.StartThread(), ZX_OK); in fdio_call_io() 25 ASSERT_EQ(memfs_install_at(loop.dispatcher(), "/my-tmp"), ZX_OK); in fdio_call_io()
|
| /system/utest/fidl-simple/ |
| A D | fakesocket_tests.cpp | 130 async_loop_t* loop = nullptr; in basic_test() local 131 ASSERT_EQ(ZX_OK, async_loop_create(&kAsyncLoopConfigNoAttachToThread, &loop), ""); in basic_test() 132 ASSERT_EQ(ZX_OK, async_loop_start_thread(loop, "spaceship-dispatcher", nullptr), ""); in basic_test() 134 async_dispatcher_t* dispatcher = async_loop_get_dispatcher(loop); in basic_test() 152 async_loop_destroy(loop); in basic_test()
|
| A D | spaceship_tests.cpp | 115 async_loop_t* loop = NULL; in spaceship_test() local 116 ASSERT_EQ(ZX_OK, async_loop_create(&kAsyncLoopConfigNoAttachToThread, &loop), ""); in spaceship_test() 117 ASSERT_EQ(ZX_OK, async_loop_start_thread(loop, "spaceship-dispatcher", NULL), ""); in spaceship_test() 119 async_dispatcher_t* dispatcher = async_loop_get_dispatcher(loop); in spaceship_test() 223 async_loop_destroy(loop); in spaceship_test() 319 async_loop_t* loop = NULL; in spaceship_async_test() local 320 ASSERT_EQ(ZX_OK, async_loop_create(&kAsyncLoopConfigNoAttachToThread, &loop), ""); in spaceship_async_test() 321 ASSERT_EQ(ZX_OK, async_loop_start_thread(loop, "spaceship-dispatcher", NULL), ""); in spaceship_async_test() 323 async_dispatcher_t* dispatcher = async_loop_get_dispatcher(loop); in spaceship_async_test() 357 async_loop_destroy(loop); in spaceship_async_test()
|
| /system/ulib/perftest/ |
| A D | rules.mk | 19 system/ulib/async-loop \ 20 system/ulib/async-loop.cpp \
|
| /system/utest/logger/ |
| A D | rules.mk | 22 system/ulib/async-loop \ 23 system/ulib/async-loop.cpp \
|