awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
smol-rs avatar

smol-rs/async-task

0
View on GitHub↗
572 stars·58 forks·Rust·apache-2.0·15 views

Async Task

Async-task is a low-level Rust concurrency library and asynchronous task executor designed for building custom asynchronous runtimes and managing background task execution pipelines. It provides concurrency primitives that handle atomic task state management, heap-allocated futures, output retrieval, and type-erased execution handles.

The library coordinates task execution, cancellation, and polling states across multiple threads using lock-free atomic operations and reference counting. Developers can supply custom scheduling logic and metadata hooks that dictate when and how tasks are queued, while extracted join handles capture and propagate the final return values of underlying futures back to awaiting callers.

Features

  • Async Task Spawning - Supports allocating futures on the heap with attached state to manage their lifecycle, scheduling, and polling within asynchronous environments.
  • Task Schedulers - Enables pulling scheduled tasks from a queue using a runnable handle to execute the underlying future and retrieve its output.
  • Custom Scheduler Implementations - Allows developers to supply custom scheduling logic and metadata hooks that dictate precisely when and how tasks are queued.
  • Concurrency Primitives - Spawns and coordinates background tasks manually to implement custom concurrency primitives and parallel processing pipelines.
  • Dynamic Heap Allocators - Allocates futures on the heap alongside execution state to unify data storage and lifecycle management into a single contiguous block.
  • Future-Based Result Handling - Extracted join handles capture the final return value of the underlying future and propagate it safely back to awaiting callers.
  • Concurrency Management Libraries - Provides utilities for building custom async runtimes and managing task queues in concurrent applications.
  • Atomic State Synchronization - Coordinates task execution, cancellation, and polling states across multiple threads using lock-free atomic operations and reference counting.
  • Type-Erased Registries - Wraps the internal future and scheduler into a clean handle that abstracts away the underlying task type for runtime executors.
  • Asynchronous Schedulers - Manages the execution queue and lifecycle of asynchronous futures by defining custom scheduling logic and attaching state metadata.
  • Asynchronous Task Executors - Provides a low-level library for allocating, scheduling, and executing futures with custom task-management strategies.
  • Asynchronous Runtimes - Enables building lightweight asynchronous runtimes from scratch by allocating futures on the heap and controlling their polling behavior.

Star history

Star history chart for smol-rs/async-taskStar history chart for smol-rs/async-task

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Async Task

Similar open-source projects, ranked by how many features they share with Async Task.
  • rust-lang/futures-rsrust-lang avatar

    rust-lang/futures-rs

    5,870View on GitHub↗

    Zero-cost asynchronous programming in Rust

    Rustasync-foundations
    View on GitHub↗5,870
  • smol-rs/smolsmol-rs avatar

    smol-rs/smol

    4,979View on GitHub↗

    Smol is a lightweight Rust asynchronous runtime and task executor. It provides a suite of foundational tools for scheduling and executing asynchronous futures, managing background workloads, and handling non-blocking network and file operations. The project includes a compatibility layer for adapting asynchronous types and execution contexts, enabling futures to run across different runtime ecosystems. It also features a mechanism to offload synchronous I/O and CPU-intensive operations to dedicated worker thread pools to prevent runtime stalls. Its capabilities cover non-blocking network I/O

    Rustasyncconcurrencyfutures
    View on GitHub↗4,979
  • kotlin/kotlinx.coroutinesKotlin avatar

    Kotlin/kotlinx.coroutines

    13,703View on GitHub↗

    Kotlinx.coroutines is a library for managing non-blocking background tasks and structured concurrency within the Kotlin programming language. It provides a framework for executing concurrent operations and synchronizing shared state, replacing traditional thread management and complex callback chains with lightweight primitives. The library utilizes a structured concurrency hierarchy to organize hierarchical background tasks, ensuring that lifecycle management, cancellation, and timeout handling propagate automatically to prevent resource leaks. It employs continuation-passing style transform

    Kotlinasynccoroutineskotlin
    View on GitHub↗13,703
  • agronholm/apscheduleragronholm avatar

    agronholm/apscheduler

    7,539View on GitHub↗

    APScheduler is a Python task scheduler designed to execute functions at specific times or recurring intervals. It functions as an asynchronous background scheduler and distributed job dispatcher, allowing tasks to run concurrently with application lifecycles and web server request handling. The system distinguishes itself through a persistent job store that saves schedules and task states in external databases, ensuring continuity across process restarts. It separates task scheduling from execution by dispatching jobs to distributed workers in separate processes to prevent execution bottlenec

    Python
    View on GitHub↗7,539
See all 30 alternatives to Async Task→

Frequently asked questions

What does smol-rs/async-task do?

Async-task is a low-level Rust concurrency library and asynchronous task executor designed for building custom asynchronous runtimes and managing background task execution pipelines. It provides concurrency primitives that handle atomic task state management, heap-allocated futures, output retrieval, and type-erased execution handles.

What are the main features of smol-rs/async-task?

The main features of smol-rs/async-task are: Async Task Spawning, Task Schedulers, Custom Scheduler Implementations, Concurrency Primitives, Dynamic Heap Allocators, Future-Based Result Handling, Concurrency Management Libraries, Atomic State Synchronization.

What are some open-source alternatives to smol-rs/async-task?

Open-source alternatives to smol-rs/async-task include: rust-lang/futures-rs — Zero-cost asynchronous programming in Rust. smol-rs/smol — Smol is a lightweight Rust asynchronous runtime and task executor. It provides a suite of foundational tools for… kotlin/kotlinx.coroutines — Kotlinx.coroutines is a library for managing non-blocking background tasks and structured concurrency within the… agronholm/apscheduler — APScheduler is a Python task scheduler designed to execute functions at specific times or recurring intervals. It… async-rs/async-std — async-std is a Rust asynchronous runtime and non-blocking I/O library. It serves as an asynchronous standard library,… failsafe-lib/failsafe — Failsafe is a JVM fault tolerance library and resilience pattern framework. It provides a toolkit for implementing…

Curated searches featuring Async Task

Hand-picked collections where Async Task appears.
  • Rust Async Runtime Libraries
  • Concurrency design patterns