31 Repos
Management of multiple execution paths using thread handles and hardware concurrency detection.
Distinct from Concurrent Execution Monitors: Shortlist contains monitors, limiters, or AI thread managers; this is core language-level thread spawning.
Explore 31 awesome GitHub repositories matching programming languages & runtimes · Concurrent Thread Execution. Refine with filters or upvote what's useful.
This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu
Guides the spawning and management of multiple execution paths using C++ thread handles.
LearningNotes ist eine technische Wissensdatenbank und ein Engineering-Studienleitfaden, der sich auf Android-Framework-Interna, Systemarchitektur und mobile Leistungsoptimierung konzentriert. Er dient als Referenz für die Analyse der Android-Boot-Sequenz, des Prozess-Bootstrappings und der Initialisierung von Systemdiensten. Das Projekt bietet detaillierte Anleitungen zur mobilen Leistung, einschließlich Strategien zur Reduzierung von Speicher-Footprints, zur Identifizierung von Speicherlecks und zur Optimierung der Bilddekodierung. Es deckt zudem die Android-Inter-Prozess-Kommunikation mittels AIDL und dem Binder-Kernel-Treiber ab sowie Softwarearchitektur-Handbücher zur Entkopplung von Geschäftslogik von Benutzeroberflächen durch Muster wie MVVM und MVP. Über die mobile Entwicklung hinaus enthält das Repository eine Informatik-Wissensdatenbank zur Vorbereitung auf technische Vorstellungsgespräche, die Datenstrukturen, Algorithmen und Betriebssystemkonzepte abdeckt. Es bietet zudem eine praktische Referenz für die Git-Versionskontrolle, die Repository-Management, Synchronisierung und Branching-Workflows detailliert beschreibt.
Details the transfer of task progress and completion notifications from background worker threads back to the main thread.
This project is a Go language cheat sheet and technical reference designed for rapid lookup of syntax patterns and core language features. It serves as a concise programming guide to Go type systems, tokens, and standard programming constructs. The reference covers foundational areas of the language, including concurrency and parallelism through the use of channels and lightweight threads. It also details data modeling using structs and embedding, as well as the language's approach to explicit error handling via return values. Additional guidance is provided on Go application architecture an
Offers guidance on implementing concurrent execution paths using goroutines and channels.
libco is a C++ coroutine library and user-space task orchestrator designed for cooperative multitasking and high-concurrency execution. It functions as a high-concurrency network framework and a synchronous-to-asynchronous wrapper that allows blocking system calls and socket functions to run asynchronously without modifying existing business logic. The project utilizes a specialized stack-copying context switching model to support millions of simultaneous TCP connections on a single machine. It includes a high-performance time wheel scheduler for managing asynchronous background jobs and dela
Enables pausing and resuming multiple functions to handle high volumes of concurrent processing.
This project is a comprehensive library of practical Python code examples and patterns. It provides a collection of scripts and snippets designed to demonstrate a wide range of programming tasks, from basic syntax to advanced implementation patterns. The repository focuses on several core domains, including the implementation of concurrency and multithreading examples, data analysis snippets for cleaning and manipulating tabular data, and various data visualization examples. It also covers automation scripts for file system management and a variety of general programming patterns. Additional
Manages concurrent tasks using shared-memory threads and locking mechanisms to handle synchronization.
Gevent is a Python coroutine concurrency library and asynchronous task manager designed for high-concurrency I/O tasks. It provides a cooperative networking framework for building asynchronous TCP, UDP, and HTTP servers, as well as a WSGI web server implementation for hosting web applications. The project is distinguished by its standard library monkey-patching tool, which replaces blocking synchronous functions with cooperative versions to enable asynchronous behavior in third-party code. This allows for a cooperative multitasking workflow where the system yields execution during I/O waits t
Runs tasks in a dedicated thread pool that bypasses monkey-patching to maintain native OS thread compatibility.
ffmpeg-kit is a cross-platform SDK that wraps FFmpeg and FFprobe into native libraries for Android, iOS, macOS, Linux, and tvOS, enabling applications to execute media processing commands through platform-specific APIs. It provides a concurrent command executor that runs multiple FFmpeg operations simultaneously and collects results independently via thread-safe interfaces. The project includes a build system that compiles FFmpeg native libraries from source with configurable codec and library options for each target platform, and offers eight precompiled binary packages with different sets o
Provides a concurrent command executor that runs multiple FFmpeg operations simultaneously.
This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core operating system concepts of process management through the fork-exec-wait model, dynamic memory allocation using implicit free list heap allocators, inode-based file systems, inter-process communication via pipes and shared memory, POSIX threads with synchronization primitives, signal-based asynchronous notification, virtual memory with page table translation, and runtime diagnostics using Valgrind and GDB. The textbook distinguishes itself by providing practical, implementation
Teaches concurrent thread execution within a single process, a fundamental system programming concept.
Dieses Projekt ist eine Sammlung von Objective-C iOS-Anwendungs-Demos und Code-Beispielen. Es bietet Implementierungen für grundlegende Entwicklungsmuster und systemnahe Funktionen innerhalb der iOS-Umgebung. Das Repository konzentriert sich auf Beispiele für die Objective-C-Runtime und demonstriert dynamisches Method-Dispatching und Runtime-Swizzling zur Änderung des Objektverhaltens. Es enthält zudem eine Core-Animation-UI-Bibliothek sowie Beispiele für iOS-Multithreading und Concurrency-Management. Das Projekt deckt Funktionen für UI-Animation und Grafik, die Koordinierung nebenläufiger Aufgaben sowie die Integration von Drittanbieter-Diensten für Authentifizierung und Social Sharing ab.
Manages multiple execution paths using thread management tools to keep the interface responsive.
Reactor Core ist ein Toolkit für reaktive Programmierung und eine nicht-blockierende Grundlage für die Komposition asynchroner Datenpipelines auf der JVM. Es dient als Framework für asynchrone Stream-Verarbeitung und als Backpressure-Managementsystem, das es Entwicklern ermöglicht, Ereignissequenzen zu transformieren, zu filtern und zu kombinieren, während der Datenfluss zwischen Produzenten und Konsumenten reguliert wird, um Ressourcenerschöpfung zu vermeiden. Die Bibliothek differenziert sich durch ein ausgeklügeltes Concurrency-Scheduling-System und nachfragebasierte Flusskontrolle. Sie entkoppelt die Signalverarbeitung von spezifischen Threads unter Verwendung einer Scheduler-Registry und bietet Mechanismen für die kontextbewusste Propagierung unveränderlicher Metadaten über asynchrone Grenzen hinweg. Sie enthält zudem spezialisierte Tools für die Trace-Erfassung zur Assembly-Zeit und Virtual-Time-Scheduling, um das Testen zeitbasierter Operatoren zu erleichtern. Das Projekt deckt ein breites Spektrum an Funktionen ab, einschließlich funktionaler Datenverarbeitung für Sequenzaggregation und Windowing, einer Vielzahl von Fehlerbehebungsstrategien wie exponentiellem Backoff-Retry sowie Dienstprogrammen zur Überbrückung von Legacy-Callback- oder synchronen APIs in reaktive Streams. Zudem bietet es Instrumentierung für Pipeline-Monitoring und eine Suite von Test-Tools zur Verifizierung von Signalsequenzen.
Provides a comprehensive scheduler registry to manage thread execution and decouple signal processing from specific threads.
This project is a comprehensive Java programming knowledge base and technical reference repository. It provides a curated collection of distilled answers, API documentation, and troubleshooting guides designed to help developers resolve common coding challenges and language pitfalls. The repository distinguishes itself through a structured architectural approach to knowledge, utilizing comparison-centric analysis to highlight trade-offs between different library implementations and language features. It aggregates high-impact community discussions into a standardized format, organizing techni
Analyzes trade-offs between runnable interfaces and thread classes to determine the optimal concurrency strategy.
Lunatic ist eine WebAssembly-Runtime und ein Manager für nebenläufige Prozesse, der ein von Erlang inspiriertes Modell für leichtgewichtige Nebenläufigkeit und Fehlertoleranz implementiert. Es fungiert als verteiltes Akteur-System, in dem isolierte Prozesse über Message-Passing in einem Netzwerk verknüpfter Knoten kommunizieren. Das System nutzt eine WebAssembly-Sandbox-Umgebung, um Speicher zu isolieren und Systemaufruf-Berechtigungen für jeden einzelnen Prozess einzuschränken. Dieses fähigkeitsbasierte Sicherheitsmodell stellt sicher, dass Prozesse in einer Sandbox ausgeführt werden, um unsicheren Code sicher auszuführen. Die Plattform bietet einen fehlertoleranten Supervision-Tree für die hierarchische Überwachung und automatische Neustarts fehlerhafter Prozesse. Sie verwaltet Workloads mit hoher Nebenläufigkeit unter Verwendung eines präemptiven Work-Stealing-Schedulers, um Tausende von leichtgewichtigen Green-Threads auszuführen. Die Runtime unterstützt die Koordination verteilter Systeme durch das Clustern von Knoten über verschiedene physische Maschinen hinweg und handhabt Netzwerk-Traffic für Protokolle wie TCP und WebSockets.
Runs thousands of concurrent lightweight green threads with minimal memory overhead to handle massive simultaneous workloads.
klib ist eine umfassende Erweiterung der C-Standardbibliothek und ein Toolkit für Datenstrukturen. Es bietet eine Reihe grundlegender Tools für Speicherverwaltung, Datenorganisation und allgemeine Dienstprogrammfunktionen für eigenständige C-Anwendungen. Das Projekt verfügt über spezialisierte Funktionen für die bioinformatische Sequenzanalyse, einschließlich des Parsens von FASTA-, FASTQ- und Newick-Formaten sowie der Implementierung von Smith-Waterman-Sequenzalignment und Hidden-Markov-Modellen. Es enthält zudem eine Bibliothek für mathematische Berechnungen für numerische Routinen und Ausdrucksauswertung sowie einen leichtgewichtigen HTTP- und FTP-Client für den wahlfreien Zugriff auf entfernte Daten. Das Toolkit deckt eine breite Oberfläche von Hochleistungs-Computing-Primitiven ab, einschließlich Multithreading-Modellen, Suffix-Array-Konstruktion in linearer Zeit und optimierten Sortieralgorithmen. Es implementiert eine Vielzahl effizienter Datenindizierungsstrukturen wie Hash-Tabellen mit offener Adressierung, B-Bäume und intrusive AVL-Bäume, unterstützt durch speicherpoolbasierte Sequenzverwaltung. Zusätzliche Dienstprogramme umfassen JSON-Datenparsing und die Interpretation von Kommandozeilenargumenten.
Implements multi-threading models to enable parallel task processing and increase overall throughput.
Borgo ist eine statisch typisierte Sprache und ein Compiler, der High-Level-Syntax in Go-Quellcode transformiert. Er fungiert als Transpiler, der darauf ausgelegt ist, die Go-Laufzeitumgebung zu nutzen und gleichzeitig ein Typsystem einzuführen, das auf algebraischen Datentypen und ergebnisbasierter Fehlerbehandlung basiert. Die Sprache zeichnet sich dadurch aus, dass sie Gos Mehrfachrückgabewerte durch Result- und Option-Typen ersetzt und einen dedizierten Operator für prägnante Fehlerfortpflanzung verwendet. Sie implementiert Summentypen mit exhaustivem Pattern Matching und bietet ein Tool zur Generierung von Bindings für bestehende Go-Pakete, wobei Mehrfachrückgaben automatisch in diese sichereren Typ-Wrapper konvertiert werden. Das System enthält Primitive für die parallele Programmierung und nutzt typisierte Channels sowie Hintergrundaufgaben zur Koordination asynchroner Prozesse. Ihr Typsystem unterstützt zudem die Implementierung struktureller Interfaces, automatische Typinferenz für Collection-Typen und Implementierungsblöcke zur Organisation von Methoden auf Structs.
Spawns lightweight goroutines to execute functions concurrently without blocking the main thread.
Rhino ist eine Java-basierte JavaScript-Engine, die eine ECMAScript-Kompatibilitätsschicht für die Ausführung innerhalb einer Java Virtual Machine implementiert. Sie dient als eingebettete Skript-Engine und Skript-Brücke, die es ermöglicht, JavaScript-Code in Java-Anwendungen zu integrieren und auszuführen. Das Projekt erleichtert die direkte sprachübergreifende Kommunikation durch das Mapping von Java-Klassen und -Objekten in eine JavaScript-Umgebung. Diese Integration ermöglicht es Skripten, über einen dedizierten Mapping-Mechanismus mit internen Systemdiensten und nativen Host-Objekten zu interagieren. Die Engine optimiert die Leistung durch die Kompilierung von JavaScript in Java-Bytecode und unterstützt ein Dual-Mode-Ausführungsmodell, um Startzeit und Laufzeitgeschwindigkeit auszubalancieren. Sie umfasst Funktionen für sprachübergreifende Datenserialisierung, XML-Verarbeitung und die Verwaltung isolierter Ausführungskontexte für gleichzeitige Aufgaben. Eine interaktive Shell für das Echtzeit-Editieren und Debuggen von Logik ist enthalten.
Manages multiple execution paths using isolated contexts to ensure thread-safe operation on shared objects.
Dieses Projekt ist eine umfassende Lehrressource und ein Kurs zum Aufbau neuronaler Netze mit PyTorch. Es deckt die grundlegenden Bausteine des Deep Learning ab, einschließlich Tensor-Manipulation, automatischer Differenzierung und der Konstruktion modularer Komponenten für neuronale Netze. Das Repository dient als technischer Leitfaden für verschiedene spezialisierte Bereiche. Es bietet Implementierungsdetails für Computer-Vision-Aufgaben wie Bildklassifizierung, Objekterkennung und semantische Segmentierung sowie Workflows für die Verarbeitung natürlicher Sprache (NLP) mit Transformern, rekurrenten Netzen und generativen Modellen. Zudem enthält es eine Referenz für generative KI, mit Fokus auf die Synthese von Bildern mittels Diffusionsmodellen und adversarialen Netzwerken. Das Material erstreckt sich auf Modelloptimierung und Deployment-Pipelines. Es behandelt Techniken zur Reduzierung der Modellgröße und zur Erhöhung der Inferenzgeschwindigkeit durch Quantisierung und den Export von Modellen in Formate wie ONNX und TensorRT. Weitere Kompetenzbereiche umfassen Data Engineering für paralleles Laden, Modellevaluierung mittels benutzerdefinierter Metriken und das Deployment von Open-Source Large Language Models. Das Projekt wird primär als eine Reihe von Jupyter Notebooks bereitgestellt.
Controls execution threads and operator ordering to tune the runtime performance of neural networks.
Quasar ist ein JVM-Concurrency-Framework, das das Actor-Modell und eine Bibliothek für leichtgewichtige Threads implementiert. Es bietet isolierte Ausführungseinheiten, die über asynchrones Message-Passing kommunizieren, um geteilten veränderbaren Zustand zu eliminieren. Das Projekt zeichnet sich durch ein verteiltes Actor-System aus, das über mehrere Cluster-Knoten hinweg mit ortstransparenten Registries und Actor-Zustandsmigration operieren kann. Es nutzt einen Work-Stealing-Fiber-Scheduler zur Verwaltung von Millionen leichtgewichtiger Threads, wodurch Aufgaben während nicht-blockierender I/O-Operationen pausieren können, ohne die zugrunde liegenden System-Threads zu blockieren. Das Framework umfasst eine breite Palette von Funktionen, einschließlich Aufsichtshierarchien für fehlertolerante Wiederherstellung und CSP-artige Kommunikationskanäle für die Datenfluss-Synchronisation. Es bietet zudem Primitive zur Koordinierung von Aufgaben mittels Futures und Datenflussvariablen sowie Tools zur Überwachung der Fiber-Gesundheit und zur Erkennung von runaway-Ausführungen. Das System ist in Java implementiert.
Utilizes green-thread style fibers to minimize memory overhead compared to standard OS threads.
Python-Guide-CN ist eine chinesische Übersetzung eines umfassenden Leitfadens für idiomatische Python-Programmierung und Softwareentwicklung. Er dient als kuratiertes Programmier-Tutorial und Ökosystem-Referenz und bietet einen strukturierten Pfad zum Erlernen von Python-Syntax, Standardbibliotheken und professionellen Coding-Mustern. Das Projekt zeichnet sich dadurch aus, dass es detaillierte Anweisungen für das Einrichten von Entwicklungsumgebungen unter Windows, macOS und Linux bietet. Es konzentriert sich spezifisch auf die Auswahl von Interpretern und die Verwaltung virtueller Umgebungen, um einen konsistenten Arbeitsplatz zu gewährleisten. Der Leitfaden deckt eine breite Palette technischer Funktionen ab, einschließlich Software-Test-Workflows, Paketverteilung und der Implementierung von Coding-Best-Practices. Er bietet zudem Anleitungen zur Webentwicklung, REST-API-Konstruktion und wissenschaftlichem Rechnen, einschließlich Datenanalyse und Visualisierung.
Explains how to manage execution threads and use locks to prevent data races.
Dieses Projekt ist eine Sammlung kuratierter Richtlinien und Handbücher für das Schreiben von sauberem, idiomatischem und wartbarem Code in Scala. Es dient als umfassender Leitfaden für Scala-Codierungsstandards, funktionales Programmierdesign und Enterprise-Softwarearchitektur. Das Repository bietet spezifische Strategien für das Concurrency-Management, einschließlich Mustern für Akteure, Futures und Thread-Pools, um Thread-Sicherheit zu gewährleisten. Es enthält zudem ein Handbuch zur Leistungsoptimierung, das sich auf die Reduzierung von Speicherallokationen und die Verwaltung des Garbage-Collection-Drucks konzentriert, um die Laufzeiteffizienz zu verbessern. Die Leitfäden decken ein breites Spektrum an Funktionen ab, einschließlich Anwendungsarchitektur, typsicherer Fehlerbehandlung und der Verwendung unveränderlicher Datenstrukturen. Zudem werden Qualitätssicherungsmaßnahmen wie standardisierte Namenskonventionen, modulares Trait-Design sowie die Implementierung von Back-Pressure und Demand-Signaling behandelt.
Recommends passing thread-pool configurations as parameters to decouple execution contexts from the runtime environment.
Dieses Projekt ist eine angepasste OpenJDK-Distribution, die für verteilte Anwendungen mit hohem Durchsatz optimiert ist. Es bietet eine Coroutine-Runtime-Engine, die Kernel-Threads durch leichtgewichtige, symmetrische Coroutines ersetzt, um die Nebenläufigkeit zu erhöhen und den Scheduling-Overhead zu reduzieren, während die Kompatibilität mit Standard-Java-Schnittstellen erhalten bleibt. Die Runtime zeichnet sich durch einen Multi-Tenant-Ressourcenmanager und spezialisierte Netzwerk-Provider aus. Sie implementiert Ressourcenisolierung für CPU und Speicher, um Interferenzen zwischen Tenants zu verhindern, und integriert Remote Direct Memory Access für Datentransfers mit hohem Durchsatz und geringer Latenz. Das System deckt ein breites Spektrum an Leistungs- und Diagnosefunktionen ab, einschließlich profilgestützter Warmup-Kompilierung zur Startbeschleunigung, dynamischer Heap-Speicherrückgewinnung und spezieller Optimierungen für Big-Data-Verarbeitung und numerische Berechnungen. Die Observability-Suite umfasst Flight-Recorder-Event-Streaming, Heap-Dump-Analyse und Coroutine-Zustandsinspektion. Langzeitsupport wird durch vierteljährliche Sicherheits- und Wartungsupdates bereitgestellt, wobei Deployment-Tools für containerisierte Umgebungen verfügbar sind.
Implements lightweight execution units managed by the runtime rather than the operating system to enable massive concurrency.