Skip to content

Releases: ori88c/delayed-async-tasks-manager

README improvements

06 Oct 21:37
Compare
Choose a tag to compare

Key Features

  • README improvements: Adding a table of contents, and enhancing some sections.

Initial Release

05 Oct 22:29
Compare
Choose a tag to compare

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. The awaitTaskCompletion 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.