Module workflow_rs::core::task
source · Expand description
task module provides helper functions for use with async closures that operate uniformly
in native (tokio-backed) and WASM (async_std-backed) environments
(i.e. a web browser).
Following functions are are available:
spawn()- non-blocking spawn of the supplied async closuresleep()- suspends the task for a given Durationyield_now()- yields rust executoryield_executor()- yields to top-level executor (browser async loop)
Blocking spawn is not available as a part of this framework as WASM-browser environment can not block task execution due to a single-threaded async application environment.
Modules§
- WASM implementation
Macros§
Structs§
Intervalstream used by theinterval()function to provide a a time interval stream. The stream is backed by tokio interval stream on native platforms and by by the JavaScriptsetInterval()andclearInterval()APIs in WASM32 environment.
Functions§
async interval()function backed by the JavaScriptcreateInterval()- Waits until
durationhas elapsed. - Yields execution back to the Tokio runtime.
- Yields execution back to the Tokio runtime.