Found 57 packages
Provides several thread-safe collection classes that should be used in place of the corresponding types in the System.Collections.NonGeneric and System.Collections packages whenever multiple threads are accessing the collection concurrently. Commonly Used Types: System.Collections.Concurrent.ConcurrentDictionary<TKey, TValue> System.Collections.Concurrent.ConcurrentQueue<T> System.Collections.Concurrent.ConcurrentBag<T> System.Collections.Concurrent.BlockingCollection<T> System.Collections.Concurrent.ConcurrentStack<T> When using NuGet 3.x this package requires at least version 3.4.
An asynchronous .NET library that allows you to lock based on a key (keyed semaphores), limiting concurrent threads sharing the same key to a specified number, with optional pooling for reducing memory allocations.
Implementation of a lock-free dictionary on .Net Included types: === NonBlocking.ConcurrentDictionary Lock-free, wait-free implementation of a dictionary. - has the same API as System.Collections.Concurrent.ConcurrentDictionary. - No locks are taken during any operation including Get, Add, Remove, internal resizes etc... - While multiple threads accessing NonBlocking dictionary will help each other in operations such as table resizing, there is no dependency on such behavior. If any thread get unscheduled or delayed for whatever reason, other threads will be able to make progress independently. - NonBlocking dictionary scales linearly with the number of active threads if hardware permits. On most operations NonBlocking dictionary is faster than Concurrent, especially in write-heavy scenarios. Core algorithms are based on NonBlockingHashMap, written and released to the public domain by Dr. Cliff Click. A good overview could be found here: https://www.youtube.com/watch?v=HJ-719EGIts === Counter32 === Counter64 Low-overhead scalable counters.
This is a .NET Standard 1.0, .NET 2.0, .NET 3.5, Silverlight 5.0 and Windows Phone Silverlight 8.0 & 8.1 backport from System.Collections.Concurrent.ConcurrentDictionary as defined in .NET Core
System.ConcurrentDictionary for .NET Framework 2.0, 3.5. This is a backport from .NET Core.
FASTER is a fast concurrent persistent log and key-value store with cache for larger-than-memory data.
ConcurrentObservableCollections based on System.Collections.Concurrent.ConcurrentCollections
A thread-safe, run-once, lazy-loaded ConcurrentDictionary full implementation of ConcurrentDictionary (+ Lazy)
==CSharpTest.Net.Collections== * BPlusTree - a fairly full featured IDictionary backed by a B+Tree on disk. * BTreeDictionary - a fully in-memory IDictionary implemented by a B+Tree. * BTreeList - an in-memory IList using a B+Tree for storage and access. * LurchTable - Least Used Recently Concurrent Hash Table, LinkedHashMap but thread-safe. * MergeSort - Provides a memory-efficient sort for arrays. * OrderedEnumeration & OrderedKeyValuePairs - Ordered enum of large volumes of key-values. * OrdinalList - A simple byte[] based bit-mask collection supporting set operations.
Extensions related to ConcurrentDictionary
Provides the GetOrAdd extension method for generic dictionaries, borrowed from the ConcurrentDictionary class.
Incredibly fast hashmap
Represents a thread-safe collection of keys and TaskCompletionSource{T} as values.
The package includes: * Task<T> for executing asynchronous operations. * Concurrent Collections such as ConcurrentStack, ConcurentQueue ad ConcurrentDictionary. * PLINQ for writing parallel queries. * additional Threading operations such as Barrier,SpinLock and SpinWait.
Extensions method for System.Collections.Concurrent.ConcurrentDictionary. Use IValueWrapper for TValue.
Garnet is a remote cache-store from Microsoft Research, that offers strong performance (throughput and latency), scalability, storage, recovery, cluster sharding, key migration, and replication features. Garnet uses the Redis RESP wire protocol and can work with existing Redis clients.
A simple wrapper around ConcurrentDictionary to support set operations
A concurrent HashSet based on Microsoft's ConcurrentDictionary.
Package Description
This is a .NET Standard 1.0, Silverlight 5.0 and Windows Phone Silverlight 8.0 & 8.1 backport from System.Collections.Concurrent.ConcurrentDictionary and System.Collections.Concurrent.ConcurrentQueue as defined in .NET Core