Releases: ori88c/delayed-async-tasks-manager
Releases · ori88c/delayed-async-tasks-manager
README improvements
Initial Release
Key Features ✨
- Modern Substitute for Javascript's 'setTimeout': Specifically designed for scheduling asynchronous tasks, i.e., callbacks that return a Promise.
- Execution Status Getters: Allows users to check the task's execution status, helping to prevent potential race conditions.
- Graceful and Deterministic Termination: The
awaitCompletionOfAllCurrentlyExecutingTasks
method resolves once all the currently executing tasks complete, or resolves immediately if the task is not executing. TheawaitTaskCompletion
method allows you to wait for the completion of a specific task, uniquely identified by its key. - Robust Error Handling: If a task throws an uncaught error, the error is captured and accessible via the
extractUncaughtErrors
method. - Comprehensive Documentation 📚: The class is thoroughly documented, enabling IDEs to provide helpful tooltips that enhance the coding experience.
- Metrics 📊: The class offers various metrics through getter methods, providing insights into the scheduler's current state.
- Fully Tested 🧪: Extensively covered by unit tests.
- No External Runtime Dependencies: This component provides a lightweight, dependency-free solution. Only development dependencies are used, for testing purpose.
- Non-Durable Scheduling: Scheduling stops if the application crashes or goes down.
- ES2020 Compatibility.
- TypeScript support.