7 repository-uri
Mechanisms for executing multiple asynchronous operations simultaneously and resolving based on the first successful completion.
Distinct from Asynchronous Task Processing: Distinct from general Asynchronous Task Processing: focuses specifically on the race condition pattern where only the fastest result is needed.
Explore 7 awesome GitHub repositories matching development tools & productivity · Task Racing. Refine with filters or upvote what's useful.
Async is a JavaScript asynchronous flow library designed to manage the execution and coordination of asynchronous tasks in Node.js and the browser. It provides functional utilities to wrap, process, and orchestrate complex asynchronous workflows. The library distinguishes itself through a comprehensive task orchestrator that handles dependency graphs to resolve circular references and manages concurrent task queues. It includes a unification bridge that allows callback-style and promise-based functions to operate within the same execution interface. The project covers several primary capabil
Async runs multiple tasks simultaneously and returns the result from the first one that completes.
Redux-Saga is a middleware for managing complex asynchronous flows and side effects in Redux applications. It functions as an asynchronous state orchestrator and side effect manager that uses JavaScript generator functions to coordinate concurrent tasks and long-running background processes tied to a global state store. The system utilizes a generator-based effect middleware to handle external I/O and API requests outside of the main application logic. It provides a mechanism to start, pause, and cancel multiple asynchronous operations, allowing the application to prevent race conditions and
Coordinates multiple competing asynchronous requests by resolving the first to complete and cancelling all others.
fp-ts is a TypeScript library that brings pure functional programming patterns to the language through algebraic data types, type class abstractions, and composable combinators. It provides foundational data types like Option for optional values, Either for typed error handling, and Task for lazy asynchronous computations, all designed to make invalid states unrepresentable and side effects explicit. The library is built on category theory concepts, offering type classes such as Functor, Applicative, Monad, Semigroup, and Monoid with lawful instances for common data structures. The library di
Returns the result of the first task to complete among a collection using a monoid.
Arrow is a functional programming library for Kotlin that provides tools for implementing data-oriented programming patterns. It serves as a framework for typed error handling, a concurrency toolkit, and a library for the manipulation of immutable data. The project distinguishes itself through specialized capabilities for managing application failures using explicit types instead of exceptions and implementing resilience patterns such as circuit breakers and retry policies for distributed services. It also provides optics to update and query deeply nested immutable data structures without man
Executes multiple asynchronous operations simultaneously and resolves based on the first successful completion.
Concurrent Ruby is a comprehensive concurrency toolkit for the Ruby language that provides thread-safe data structures, synchronization primitives, and asynchronous execution patterns. It implements core concurrency abstractions including an actor model framework where isolated actors communicate through asynchronous message passing, a future and promise system for composing non-blocking operations, and thread pool executors that manage reusable worker threads for concurrent task execution. The library distinguishes itself through a broad set of coordination mechanisms that go beyond basic th
Resolves a future as soon as the first among a set of futures resolves.
RxPY este o bibliotecă de programare reactivă funcțională și o bibliotecă de tip ReactiveX observable pentru Python. Acesta servește drept procesor de fluxuri asincrone și framework de coordonare bazat pe evenimente, utilizat pentru a construi pipeline-uri de date care reacționează la schimbările de stare sau la fluxurile de evenimente în timp. Biblioteca oferă un set de instrumente pentru compunerea programelor asincrone și bazate pe evenimente folosind secvențe observabile și operatori. Se distinge prin utilizarea de schedulere configurabile pentru a gestiona concurența, sincronizarea și ciclurile de viață ale abonamentelor. Proiectul acoperă o gamă largă de capabilități de procesare a fluxurilor, inclusiv agregarea, filtrarea și combinarea datelor. Oferă mecanisme pentru difuzarea evenimentelor, buffering-ul secvențelor și gestionarea erorilor, precum și instrumente pentru coordonarea fluxurilor observabile cu bucle de evenimente asincrone. Testarea și asigurarea calității sunt susținute prin simularea timpului virtual, modelarea cu diagrame marble și verificarea emisiilor.
Monitors multiple asynchronous sequences and propagates only the value from the one that reacts first.
ZIO is a functional effect system for the JVM that models asynchronous and concurrent programs as pure, composable values with typed error handling and dependency injection. Its core identity is built on fiber-based concurrency, where lightweight, non-blocking fibers execute millions of concurrent tasks with structured lifecycle management, and a dual-channel error model that separates expected business failures from unexpected system defects at compile time. The system provides effect-typed dependency injection through a layer-based dependency graph, pull-based reactive stream processing with
Runs two effects in parallel and returns the first successful result.