chasemedallion
Author Trust
29 packages
DistributedLock.Core
Michael Adelson
Core interfaces and utilities that support the DistributedLock.* family of packages
MedallionTopologicalSort
Michael Adelson
A fast implementation of topological sorting that supports stable sorting as well as breaking ties via ThenBy[Descending]
DistributedLock.Redis
Michael Adelson
Provides distributed locking primitives based on Redis
DistributedLock.Postgres
Michael Adelson
Provides a distributed lock implementation based on Postgresql
DistributedLock.SqlServer
Michael Adelson
Provides a distributed lock implementation based on SQL Server
DistributedLock.FileSystem
Michael Adelson
Provides a distributed lock implementation based on file locks
DistributedLock
Michael Adelson
Provides easy-to-use mutexes, reader-writer locks, and semaphores that can synchronize across processes and machines. This is an umbrella package that brings in the entire family of DistributedLock.* packages (e. g. DistributedLock.SqlServer) as references. Those packages can also be installed individually.
DistributedLock.Azure
Michael Adelson
Provides a distributed locking implementation based on Azure blob leases
DistributedLock.WaitHandles
Michael Adelson
Provides a distributed lock implementation based on global WaitHandle objects in Windows
DistributedLock.MySql
Michael Adelson
Provides a distributed lock implementation based on MySql
DistributedLock.ZooKeeper
Michael Adelson
Provides a distributed locking implementation based on Apache ZooKeeper
DistributedLock.Oracle
Michael Adelson
Provides a distributed lock implementation based on Oracle Database
MedallionShell
Michael Adelson
A lightweight, cross-platform library that simplifies working with processes in .NET
DistributedLock.MongoDB
Michael Adelson, joesdu
Provides a distributed lock implementation based on MongoDB
MedallionOData
Michael Adelson
MedallionOData is a lightweight, zero-setup .NET library for creating and querying OData and OData-like services.
MedallionRandom
Michael Adelson
A lightweight library of common utilities for working with random numbers
MedallionPriorityQueue
Michael Adelson
A fast generic PriorityQueue data structure .NET
MedallionShell.StrongName
Michael Adelson
Strong-named release of MedallionShell 1.x. MedallionShell is a lightweight, cross-platform library that simplifies working with processes in .NET
ImmutableLinkedList
Michael Adelson
Lightweight and performant immutable linked list data structure for .NET
Traverse
Michael Adelson
Explore trees and tree-like structures with LINQ using tree-traversal algorithms like breadth-first and depth-first search: IEnumerable<DirectoryInfo> childDirectories = Traverse.DepthFirst(new DirectoryInfo(...), d => d.EnumerateDirectories()); IEnumerable<DirectoryInfo> parentDirectories = Traverse.Along(new DirectoryInfo(...), d => d.Parent);
CancellationProvider
Michael Adelson
Abstraction for flowing CancellationToken via dependency injection
Bits
Michael Adelson
Convenient and fast bitwise operations for all .NET primitive integral types
MedallionCollections.Inline
Michael Adelson
A lightweight library containing common utilities for working with .NET collections and enumerables
MedallionCollections
Michael Adelson
A lightweight library containing common utilities for working with .NET collections and enumerables
MedallionPriorityQueue.Inline
Michael Adelson
A fast generic PriorityQueue data structure .NET
MedallionRandom.Inline
Michael Adelson
A lightweight library of common utilities for working with random numbers
PrecompiledRegex.Fody
Michael Adelson
Compiles regular expressions as part of the build process for improved performance and validation
MedallionComparers
Michael Adelson
MedallionComparers makes it easy to create IEqualityComparer<T>s and IComparer<T>s for any situation, including comparing collections.
DistributedLock.ProcessScoped
Michael Adelson
Provides a process-scoped implementation of named locks