FastLED 3.9.15
|
Generic asynchronous task management for FastLED.
This module provides a unified system for managing asynchronous operations across FastLED, including HTTP requests, timers, and other background tasks.
The async system integrates with FastLED's engine events and can be pumped during delay() calls on WASM platforms for optimal responsiveness.
Definition in file async.h.
#include "fl/namespace.h"
#include "fl/vector.h"
#include "fl/function.h"
#include "fl/ptr.h"
#include "fl/variant.h"
#include "fl/promise.h"
#include "fl/promise_result.h"
#include "fl/singleton.h"
#include "fl/thread_local.h"
#include "fl/task.h"
#include "fl/time.h"
Go to the source code of this file.
Classes | |
class | fl::async_runner |
Generic asynchronous task runner interface. More... | |
class | fl::AsyncManager |
Async task manager (singleton) More... | |
class | fl::Scheduler |
Namespaces | |
namespace | fl |
IMPORTANT! | |
Functions | |
size_t | fl::async_active_tasks () |
Get the number of active async tasks across all systems. | |
bool | fl::async_has_tasks () |
Check if any async systems have active tasks. | |
void | fl::async_run () |
Run all registered async tasks once. | |
void | fl::async_yield () |
Platform-specific async yield function. | |
template<typename T> | |
fl::result< T > | fl::await_top_level (fl::promise< T > promise) |
Synchronously wait for a promise to complete (ONLY safe in top-level contexts) | |