14 مستودعات
Frameworks that represent the eventual result of an asynchronous operation using futures or promises to simplify concurrency logic.
Distinct from Task-Based Concurrency Frameworks: None of the candidates focus specifically on the 'future/promise' representation as an architectural identity for concurrency.
Explore 14 awesome GitHub repositories matching software engineering & architecture · Future-Based Concurrency Frameworks. Refine with filters or upvote what's useful.
Vert.x is a reactive polyglot framework and asynchronous programming library for the Java Virtual Machine. It functions as an event-driven networking framework and toolkit for building non-blocking applications. The system enables the development of high-concurrency network services and event-driven microservices. It supports the creation of reactive services using multiple languages running on the JVM. The framework covers a wide range of capabilities including the management of HTTP and TCP network protocols, non-blocking file system access, and the integration of reactive clients.
Uses futures and promises to manage the eventual results of asynchronous operations and simplify concurrency logic.
PromiseKit is a future-based concurrency framework and promise library for Swift and Objective-C. It functions as an asynchronous workflow coordinator, representing the eventual result of an operation to simplify concurrency logic and replace nested callback structures. The framework enables the coordination of both sequential and parallel asynchronous tasks. It provides a structured pipeline for chaining operations, allowing the results of one task to be passed into the next and facilitating the execution of multiple operations simultaneously. The library includes a state-machine based reso
Provides a future-based concurrency framework to simplify complex asynchronous logic across Swift and Objective-C.
Seastar is a C++ server application framework and asynchronous programming library designed for building high-performance, shared-nothing server applications. It functions as a high-performance I/O engine providing direct disk and network access through a shared-nothing framework that partitions data and execution across CPU cores. The framework distinguishes itself through a thread-per-core architecture that eliminates locking and resource contention by assigning one execution thread to each physical CPU core. It implements a userspace TCP/IP stack and kernel-bypass techniques, integrating w
Provides a concurrency framework based on futures and promises to manage non-blocking task chains.
Actix is a Rust actor framework and concurrent programming toolkit designed for building applications that manage state through an asynchronous messaging system. It provides a model where independent actors serve as autonomous units of state and logic, communicating via strongly typed messages sent to unique addresses. The framework distinguishes itself by isolating state within these actors, allowing internal data to be mutated safely during message handling without the use of locks or mutexes. It employs an asynchronous mailbox system to buffer incoming requests and uses supervision strateg
Uses futures to represent the eventual result of an asynchronous message processed by an actor.
ThreadPool is a C++ thread management library designed to execute asynchronous tasks using a fixed number of background worker threads. It functions as a concurrent task executor that reduces the overhead associated with the repeated creation and destruction of threads. The library utilizes a synchronized queue to distribute workloads across multiple CPU cores and employs variadic templates to accept any callable function with arbitrary arguments. The system manages concurrency through mutex-protected shared state and condition-variable signaling to wake idle threads. It also provides a mech
Wraps asynchronous task returns in future objects, allowing callers to retrieve results once processing is complete.
This repository is a collection of practical code snippets and implementation patterns for Flutter and Dart. It serves as a comprehensive guide and reference for asynchronous programming, state management patterns, and UI component design. The project provides advanced language reference material covering generics, reflection, factory constructors, and null-aware operators. It also includes specific utilities for manipulating Dart collections, such as helper methods for transforming and filtering maps, lists, and iterables. The coverage extends to high-level capabilities including asynchrono
Provides architectural patterns for managing asynchronous operations using futures to coordinate loading and error states.
Zero-cost asynchronous programming in Rust
Joins multiple futures into a single output or selects the first one to complete among them.
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
Constructs futures and promises that support chaining, composition, and error propagation.
Lettuce is a Redis client library for Java that provides synchronous, asynchronous, and reactive programming models for interacting with Redis databases. It supports standalone, cluster, sentinel, pub/sub, and search operations through a single thread-safe connection model that handles command execution without blocking the calling thread. The library distinguishes itself through its reactive streams integration with Project Reactor, enabling non-blocking, backpressure-aware data processing with Mono and Flux types. It offers cluster slot routing that transparently handles MOVED and ASK redir
Returns RedisFuture objects from asynchronous commands for non-blocking completion handling and chaining.
Web3j هي مكتبة Java و Android مصممة لدمج التطبيقات مع عملاء بلوكشين Ethereum. توفر عميل JSON-RPC لقراءة بيانات السلسلة وإرسال المعاملات، ومولداً لغلاف العقود الذكية ينشئ كود Java أصلياً من تعريفات العقود، ومديراً برمجياً للمحفظة للتعامل مع المفاتيح التشفيرية وتوقيع المعاملات. يتميز المشروع بنظام توليد غلاف يعتمد على القوالب يسمح بتفاعل آمن من حيث النوع مع العقود الموجودة على السلسلة. كما يتضمن مجموعة أدوات مخصصة لترجمة أسماء النطاقات المقروءة بشرياً إلى عناوين تشفيرية من خلال حل خدمة الأسماء. تغطي المكتبة مجموعة واسعة من القدرات، بما في ذلك التنفيذ غير المتزامن لاستعلامات البلوكشين، وإدارة المفاتيح التشفيرية، وتصحيح أخطاء تنفيذ الجهاز الافتراضي لتحليل سلوك العقد. كما توفر نموذج اتصال يعتمد على المزود لتجريد نقل الشبكة وأدوات سطر الأوامر لتمهيد المشروع.
Uses Java concurrency primitives to handle asynchronous blockchain queries and transaction mining.
Amp هو إطار عمل للتزامن غير المحظور (non-blocking) لـ PHP. يوفر بنية تحتية أساسية لكتابة تطبيقات غير متزامنة باستخدام حلقة أحداث (event loop) لجدولة العمليات والمؤقتات والإشارات داخل عملية واحدة. ينفذ المشروع مكتبة coroutine تستخدم الألياف (fibers) لتعليق واستئناف تنفيذ الوظائف. يسمح هذا للنظام بالتعامل مع المهام المتزامنة دون حظر خيط التنفيذ الرئيسي، مما يحسن استخدام CPU أثناء عمليات الإدخال والإخراج. كما يدير نتائج العمليات المعلقة من خلال تنفيذ المستقبل والوعد (future and promise). يغطي إطار العمل مجموعة واسعة من قدرات التنسيق، بما في ذلك تعدد إرسال الإدخال/الإخراج غير المحظور، وإلغاء المهام القائم على الرموز لإجهاض العمليات طويلة الأمد، واستراتيجيات انتظار اكتمال مهام متزامنة متعددة. كما يتضمن آليات لجدولة المهام المتكررة وإيقاف التنفيذ.
Allows resolving or failing asynchronous operations manually from within a producer.
Tower is a modular service abstraction layer for the Rust programming language, providing a framework for building asynchronous request-response pipelines. It serves as a set of core components for managing backpressure, balancing loads, and abstracting service discovery. The project distinguishes itself through a layer-based middleware composition model, allowing services to be wrapped in recursive chains of decorators. This enables the declarative application of cross-cutting concerns, such as timeouts, rate limiting, and retries, in a protocol-agnostic manner. The library covers a broad r
Utilizes non-blocking polling of future values to handle concurrent requests without locking execution threads.
This project is a promise-based concurrency framework and asynchronous task library for Swift and Objective-C. It functions as a workflow orchestrator that uses monadic transformations to chain operations and propagate results through a state machine. The library specializes in transforming traditional completion-handler APIs into promise-based structures to enable sequential execution. It provides mechanisms for coordinating simultaneous background processes, including the ability to aggregate results from multiple tasks or synchronize operations through racing and waiting. The framework co
Provides a concurrency framework that uses futures and promises to simplify complex asynchronous logic and result propagation.
This project is a Scala programming course and educational resource. It provides a set of lessons covering the core fundamentals of the language, ranging from basic syntax to advanced type systems. The material includes a functional programming tutorial focused on higher-order functions and pattern matching, as well as guides on managing asynchronous execution and concurrency. It also serves as a resource for understanding the Java Virtual Machine and language interoperability. The course covers the application of polymorphism and variance for type-safe data structures and the use of specifi
Provides instruction on using futures and promises to handle non-blocking asynchronous concurrency.