10 dépôts
Systems that decouple background task execution from main application threads.
Distinguishing note: Focuses on architectural decoupling of processes rather than general task scheduling.
Explore 10 awesome GitHub repositories matching software engineering & architecture · Asynchronous Process Managers. Refine with filters or upvote what's useful.
WindTerm is a cross-platform terminal emulator and integrated development environment designed for remote server management and system administration. It provides a centralized graphical interface for interacting with local and remote command-line environments, utilizing a low-level emulation engine to interpret ANSI escape sequences and render text streams. The application distinguishes itself through a multi-pane workspace that supports terminal session multiplexing, allowing users to organize multiple command windows and panes within a single interface. It features a modular architecture t
Decouples terminal session lifecycles from the main UI thread to prevent interface freezing.
LightTable is an extensible source code editor and integrated development environment designed as an interactive programming environment. It enables the evaluation of programming language fragments in real time to provide instant feedback on expressions. The workspace functions as a remote execution environment, connecting to and managing external servers to run code within remote processes. It allows for an interactive workflow where users can execute code fragments and track expression values without restarting the environment. The system provides source code editing capabilities, includin
Uses a message bus to decouple the user interface from background execution processes.
Syntastic is a syntax checking plugin for Vim that integrates external command line linting tools to identify and highlight code errors in real time. It functions as an external linter integrator and multi-language linter wrapper, allowing users to run automated code verification across various programming languages within the editor. The system is distinguished by its ability to chain multiple external syntax checkers for a single file type and merge their results into a single unified error collection. It provides an interface to manage these findings through the Vim location list, enabling
Implements a system to decouple background syntax checking from the main editor thread to ensure UI responsiveness.
JupyterHub is a multi-user platform for hosting and managing isolated Jupyter notebook server instances on a single system or cluster. It serves as a notebook server orchestrator that spawns and monitors individual computing environments on demand. The system uses a plugin-based spawner interface to launch these environments across diverse infrastructure, including local processes, containers, or cloud clusters. It integrates with external identity providers and supports pluggable authentication to verify user identities and secure access. The framework includes centralized administration to
Tracks and monitors the lifecycle of concurrent server processes using an asynchronous event loop.
Symfony Process is a PHP library for executing external commands in separate operating-system processes with full lifecycle control. It provides a cross-platform command executor that handles OS-specific argument escaping and process management, enabling portable subprocess execution from PHP applications. The library supports both synchronous and asynchronous process execution, allowing background subprocesses to run independently while the main PHP script continues. It includes executable path resolution to locate system commands across standard search directories, stream-based I/O pipes fo
Starts background subprocesses with timeout, signal, and streaming output support.
CliWrap est une bibliothèque de gestion de processus asynchrones et un wrapper de processus enfants, utilisée pour exécuter des commandes externes et intégrer des interfaces en ligne de commande dans des applications. Elle fournit un framework pour lancer des programmes externes via des patterns asynchrones, gérer les processus enfants et valider les codes de sortie. La bibliothèque se distingue par sa capacité à router les flux d'entrée, de sortie et d'erreur standard vers des buffers en mémoire ou des flux d'événements en temps réel. Elle permet le monitoring en temps réel des lignes de sortie des processus et prend en charge la terminaison des processus via des jetons d'annulation (cancellation tokens). Le projet couvre un large éventail de capacités de gestion de processus externes, incluant la configuration des variables d'environnement, la redirection des flux standard et la capture de la sortie des processus pour une utilisation en tant que données au sein d'une application.
Manages external process execution using non-blocking async-await patterns to decouple background tasks from the main thread.
Ce projet est un client de distribution de jeux Linux, une boutique de jeux numériques et un runtime de jeu. Il fournit une interface de bureau pour découvrir, acheter, télécharger et lancer des jeux vidéo numériques sur les systèmes d'exploitation Linux. Le logiciel implémente une couche de traduction qui convertit les appels d'API Windows en appels système Linux pour permettre l'exécution de binaires non natifs. Il utilise un environnement runtime basé sur des conteneurs et des espaces de noms du noyau pour assurer la compatibilité des binaires et des dépendances à travers diverses distributions Linux. Le système inclut un gestionnaire d'affichage qui abstrait l'interface entre les fenêtres de jeu et les environnements de bureau X11 ou Wayland. Il gère également la mise en cache locale des actifs pour les métadonnées et regroupe les bibliothèques partagées pour éviter les conflits de version avec le système d'exploitation hôte. La gestion des processus est traitée par une surveillance asynchrone des cycles de vie des processus enfants et des codes de sortie pour le suivi de l'exécution et le rapport de crash.
Implements an asynchronous process management system to monitor child process lifecycles and handle crash reporting.
fzf-lua is a fuzzy finder integration for Neovim that utilizes fzf to search files, buffers, and project symbols. It serves as a code navigation framework providing a dynamic result generator that populates search windows using real-time shell commands or custom Lua functions. The project distinguishes itself through specialized integration tools for Git and Language Server Protocols. It includes a Git search interface for navigating commits, branches, stashes, and diffs, alongside an LSP integration tool that bridges language server providers to locate definitions and references across a cod
Executes heavy search operations in separate system processes to keep the Neovim editor thread responsive.
vim-lsp is a Vim plugin that implements the Language Server Protocol to provide an asynchronous code intelligence tool for the editor. It serves as a bridge between Vim and external language servers, providing semantic code analysis and IDE-like navigation and diagnostics. The project provides a refactoring interface for renaming symbols across a workspace and applying quick-fixes. It also enables semantic highlighting, which color-codes elements based on their meaning as determined by the language server. The plugin covers a broad surface of capabilities, including symbol navigation and dis
Manages external server processes asynchronously to ensure the editor remains responsive during code analysis.
Bacon is a background job runner and text-based user interface test dashboard designed for tracking code health and isolating failing tests. It functions as a developer workflow automator and file system watcher that triggers shell commands and verification tasks automatically when source files are modified. The tool allows for the definition of custom checkers and keyboard shortcuts to accelerate the iteration and debugging process. It provides a focused display for monitoring project health by tracking compilation errors and restricting active jobs to only those tests that have failed. The
Decouples the execution of verification tasks from the main UI thread using asynchronous process management.