SnapDB.Collections Namespace

The SnapDB.Collections namespace organizes all common SnapDB library functionality related to arrays, queues, lists, etc., e.g., the LargeArrayT class.

Classes

BitArray Represents an array of bits much like the native .NET implementation, however this focuses on providing a free space bit array.
ConcurrentIndexedDictionaryTKey, TValue A thread-safe indexed dictionary that can only be added to.
LargeArrayT Implementation that utilizes a jagged array structure and array expansion optimization to improve performance.
ListExtensions Extensions for IListT
NullableLargeArrayT Provides a high speed list that can have elements that can be null. It is similar to a ListT except high speed lookup for NextIndexOfNull-like functions is provided as well.
ResourceQueueT Provides a specialized, thread-safe queue that acts as a quasi-buffer pool.
ResourceQueueCollectionTKey, TResource Provides a thread-safe collection of many different resources of the same type.
SortedListFactory Quickly creates a SortedList from a provided list of keys and values.
WeakListT Creates a list of items that will be weak referenced. This list is thread-safe and allows enumeration while adding and removing from the list.

Structures

WeakListTEnumerator An IEnumeratorT for WeakListT