7 مستودعات
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 هي مكتبة للبرمجة التفاعلية الوظيفية ومكتبة ReactiveX للملاحظات (Observable) في Python. تعمل كمعالج تدفق غير متزامن وإطار عمل تنسيق قائم على الأحداث، وتُستخدم لبناء خطوط أنابيب بيانات تتفاعل مع تغيرات الحالة أو تدفقات الأحداث بمرور الوقت. توفر المكتبة مجموعة أدوات لتأليف البرامج غير المتزامنة والقائمة على الأحداث باستخدام تسلسلات قابلة للملاحظة وعوامل تشغيل. تتميز باستخدام مجدولات (Schedulers) قابلة للتكوين لإدارة التزامن والتوقيت ودورات حياة الاشتراك. يغطي المشروع مجموعة واسعة من قدرات معالجة التدفق، بما في ذلك تجميع البيانات، والتصفية، والدمج. كما يوفر آليات لبث الأحداث، وتخزين التسلسلات مؤقتًا، ومعالجة الأخطاء، بالإضافة إلى أدوات لتنسيق التدفقات القابلة للملاحظة مع حلقات الأحداث غير المتزامنة. يتم دعم الاختبار وضمان الجودة من خلال محاكاة الوقت الافتراضي، ونمذجة مخططات الرخام (Marble diagrams)، والتحقق من الانبعاثات.
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.