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·18 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 are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. 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

Projects sharing features with Async Task

These projects share indexed features with Async Task. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • 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
Compare all 30 related projects→

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.

Which projects share features with smol-rs/async-task?

Projects with overlapping indexed features 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