awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
microsoft avatar

microsoft/vs-threading

0
View on GitHub↗
1,036 stars·158 forks·C#·7 viewsmicrosoft.github.io/vs-threading↗

Vs Threading

Vs-threading is a cross-platform .NET concurrency library and utility set for C# designed to manage multithreaded workflows, coordinate concurrent tasks, and prevent deadlocks. It supplies specialized non-blocking semaphores, events, and locks alongside asynchronous counterparts for lazy initialization, event handlers, and local storage.

The library provides awaitable extension methods on tasks to shift execution threads, apply timeouts, and propagate cancellation tokens. It includes mechanisms to stall the main user interface thread synchronously while waiting for background tasks to finish without creating circular wait conditions.

To maintain code quality, the package integrates static analysis tools that inspect source code syntax trees during compilation. These analyzers flag legacy practices, blocking waits, foreign task await operations, and incorrect thread switching to catch common asynchronous programming mistakes early.

Features

  • Concurrency & Threading - Uses asynchronous synchronization primitives to safely coordinate concurrent tasks across multiple threads.
  • Concurrency Libraries - Provides a comprehensive cross-platform .NET concurrency library for managing multithreaded workflows and synchronization.
  • POSIX Thread Synchronization Primitives - Manages cross-thread access using specialized primitives to prevent deadlocks and maintain thread safety.
  • Cross-Thread Synchronizers - Manages asynchronous operations and cross-thread access using specialized primitives to maintain safety.
  • Async Coordination Libraries - Manages concurrent operations and synchronizes execution flow across threads to prevent deadlocks.
  • Async Synchronization Libraries - Implements advanced asynchronous synchronization primitives and analyzers to prevent deadlocks in managed applications.
  • Concurrent Thread Execution - Coordinates concurrent tasks and manages execution flow across threads to prevent race conditions.
  • Execution Context Switching - Provides awaitable extension methods on tasks to seamlessly shift execution threads and enforce timeouts.
  • Synchronization Primitives - Supplies specialized non-blocking semaphores, events, and locks to coordinate concurrent execution flow across threads.
  • Asynchronous Synchronization Primitives - Supplies specialized non-blocking semaphores, events, and locks to coordinate concurrent execution flow safely.
  • Asynchronous Concurrency Managers - Coordinates concurrent tasks and manages execution flow across multiple threads to prevent race conditions.
  • Static Code Analysis - Inspects source code syntax trees during compilation to flag threading errors and anti-patterns early.
  • Concurrency and Utilities - Includes extension methods on tasks to shift execution threads, apply timeouts, and propagate cancellation tokens.
  • Thread Activity Analysis - Inspects source code during compilation to catch common threading mistakes and programming pitfalls.
  • Threading Analyzers - Flags legacy practices, blocking waits, and incorrect thread switching during compilation using integrated static analyzers.
  • Lazy Asynchronous Task Management - Provides asynchronous lazy initialization containers to manage deferred background data cleanly.
  • Rust Anti-Pattern Detection - Flags legacy threading practices, blocking waits, and incorrect thread switching at compile time.
  • Asynchronous Event Queueing - Supplies asynchronous counterparts for event handlers and local storage to manage background data cleanly.
  • UI Thread Schedulers - Stalls the user interface thread safely while waiting for background tasks to complete without creating deadlocks.
  • Thread-Safe Development - Applies synchronization primitives to help developers handle asynchronous workflows safely across threads.
  • Thread Error Trackers - Inspects source code during compilation to catch common asynchronous programming pitfalls and threading mistakes.
  • Static Code Analyzers - Integrates compilation-time static analysis tools to inspect syntax trees and catch common asynchronous programming errors early.
  • Main Thread Dispatchers - Stalls the user interface thread synchronously while waiting for background tasks to finish without deadlocking.

Star history

Star history chart for microsoft/vs-threadingStar history chart for microsoft/vs-threading

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Curated searches featuring Vs Threading

Hand-picked collections where Vs Threading appears.
  • a runtime for executing concurrent tasks
  • Async runtime framework
  • Concurrency and Parallel Programming Resources

Open-source alternatives to Vs Threading

Similar open-source projects, ranked by how many features they share with Vs Threading.
  • stephencleary/asyncexStephenCleary avatar

    StephenCleary/AsyncEx

    3,719View on GitHub↗

    AsyncEx is a .NET asynchronous synchronization library providing a collection of primitives to coordinate tasks and manage execution flow. It implements mechanisms for asynchronous resource locking, event signaling, and concurrency control to ensure correct execution order in environments supporting async/await. The library includes an asynchronous lock implementation to protect shared resources without blocking threads, an async semaphore controller to limit simultaneous operations, and an event signaling system to manage the startup and shutdown of asynchronous workflows. The toolkit cover

    C#asyncasync-awaitasyncex
    View on GitHub↗3,719
  • ruby-concurrency/concurrent-rubyruby-concurrency avatar

    ruby-concurrency/concurrent-ruby

    5,830View on GitHub↗

    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

    Ruby
    View on GitHub↗5,830
  • angrave/systemprogrammingangrave avatar

    angrave/SystemProgramming

    5,734View on GitHub↗

    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

    View on GitHub↗5,734
  • jackzhenguo/python-small-examplesjackzhenguo avatar

    jackzhenguo/python-small-examples

    8,132View on GitHub↗

    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

    Pythondata-sciencemachine-learningpython
    View on GitHub↗8,132
See all 30 alternatives to Vs Threading→

Frequently asked questions

What does microsoft/vs-threading do?

Vs-threading is a cross-platform .NET concurrency library and utility set for C# designed to manage multithreaded workflows, coordinate concurrent tasks, and prevent deadlocks. It supplies specialized non-blocking semaphores, events, and locks alongside asynchronous counterparts for lazy initialization, event handlers, and local storage.

What are the main features of microsoft/vs-threading?

The main features of microsoft/vs-threading are: Concurrency & Threading, Concurrency Libraries, POSIX Thread Synchronization Primitives, Cross-Thread Synchronizers, Async Coordination Libraries, Async Synchronization Libraries, Concurrent Thread Execution, Execution Context Switching.

What are some open-source alternatives to microsoft/vs-threading?

Open-source alternatives to microsoft/vs-threading include: stephencleary/asyncex — AsyncEx is a .NET asynchronous synchronization library providing a collection of primitives to coordinate tasks and… ruby-concurrency/concurrent-ruby — Concurrent Ruby is a comprehensive concurrency toolkit for the Ruby language that provides thread-safe data… jackzhenguo/python-small-examples — This project is a comprehensive library of practical Python code examples and patterns. It provides a collection of… angrave/systemprogramming — This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core… cpp-best-practices/cppbestpractices — This project is a curated collection of guidelines and technical resources designed to improve C++ code safety,… reactor/reactor-core — Reactor Core is a reactive programming toolkit and non-blocking foundation for composing asynchronous data pipelines…