4 dépôts
Tools and utilities for inspecting and troubleshooting asynchronous execution flows and thread-safety issues.
Distinct from Concurrent Code Testing: Distinct from Concurrent Code Testing: focuses on runtime inspection and troubleshooting of live concurrent operations rather than verifying correctness through tests.
Explore 4 awesome GitHub repositories matching testing & quality assurance · Concurrency Debugging. Refine with filters or upvote what's useful.
Ce projet est une référence technique et une collection de notes d'analyse interne axées sur le runtime et le compilateur du langage Go. Il fournit une analyse détaillée des rouages internes du langage, couvrant la gestion de la mémoire, le ramasse-miettes (garbage collection) et le modèle d'exécution du planificateur. Le matériel se distingue en fournissant des plongées approfondies dans les détails système de bas niveau, incluant une référence pour les instructions d'assemblage Go, l'utilisation des registres et l'interfaçage des appels système. Il analyse spécifiquement l'implémentation interne des primitives de concurrence, telles que le mécanisme de planification des goroutines, les opérations sur les canaux et les implémentations de verrous mutex. La couverture s'étend à la théorie de la construction des compilateurs, incluant l'analyse lexicale et syntaxique, ainsi que la mécanique du système de types et la gestion des interfaces. Il détaille également diverses techniques d'optimisation des performances, des utilitaires de diagnostic du runtime pour le traçage de la pile et des primitives d'E/S réseau.
Analyzes goroutines, channel states, and lock contention to resolve concurrency bugs like deadlocks and race conditions.
Dokka est un moteur de documentation extensible conçu pour générer des supports de référence API structurés pour les projets Kotlin. En analysant le code source et les commentaires, il fonctionne comme un générateur de site statique qui transforme les bases de code en documentation lisible. Il s'intègre directement dans les workflows de développement en tant que plugin de système de build, permettant la création automatisée de supports de référence pendant le processus de compilation standard. Le projet se distingue par un pipeline de traitement modulaire piloté par des plugins qui permet aux développeurs de modifier le workflow de génération, de personnaliser les formats de sortie et d'ajuster le style visuel. Il prend en charge des structures de projet complexes en agrégeant la documentation de plusieurs sous-projets en une seule sortie unifiée. De plus, il inclut un moteur de références croisées qui résout les symboles de code internes et les liens vers la documentation de bibliothèques externes, garantissant que les supports générés restent connectés et navigables. Le moteur offre un contrôle étendu sur la sortie finale, y compris la possibilité de filtrer des éléments de code spécifiques, d'intégrer des exemples d'utilisation en direct et de lier directement vers des dépôts de code source distants. Il prend en charge plusieurs formats de sortie, tels que HTML, Markdown et Javadoc, et permet une personnalisation poussée des templates et des assets pour répondre à des exigences spécifiques de branding ou de documentation. L'outil est conçu pour être invoqué via des interfaces en ligne de commande ou via des intégrations natives d'outils de build, facilitant son utilisation dans des pipelines de déploiement automatisés.
Includes specialized tools for inspecting and troubleshooting the state of asynchronous operations during execution.
Panicparse is a toolset for Go crash analysis and runtime debugging. It functions as a panic stack trace parser, a race detector log parser, and a goroutine deduplicator designed to transform raw crash dumps and thread sanitizer output into structured, readable formats. The project distinguishes itself by converting complex stack traces into visual HTML reports with embedded source code. It reduces noise in highly parallelized processes by grouping identical goroutine stacks and prioritizes application code over standard library calls during parsing. The utility also covers live process moni
Provides utilities for inspecting and troubleshooting asynchronous execution flows in highly parallelized Go applications.
This project is an educational resource providing a collection of executable Java code examples designed to demonstrate common multi-threading pitfalls and synchronization failures. It serves as a practical guide for developers to identify and debug issues such as race conditions, memory visibility problems, and deadlocks within concurrent software environments. The repository distinguishes itself by offering reproducible scenarios that simulate complex concurrency hazards, including structural corruption in non-thread-safe collections and cyclic dependencies between threads. By executing the
Executes code examples of common multi-threading pitfalls like non-atomic operations to help developers identify and debug concurrency issues.