Show / Hide Table of Contents

Namespace System.Memory

Classes

Bundle

Provides a set of factory methods to create bundles of objects which are stored in a memory-efficient manner.

Cache<T>

Cache implementation for types that do not need to be deconstructed.

Cache<T, TCached, TNonCached>

Utility for deconstructing objects into cacheable and non-cacheable components and sharing the parts that are cacheable.

Cache<T, TCached1, TCached2, TNonCached>

Utility for deconstructing objects into cacheable and non-cacheable components and sharing the parts that are cacheable.

Cache<T, TCached1, TCached2, TCached3, TNonCached>

Utility for deconstructing objects into cacheable and non-cacheable components and sharing the parts that are cacheable.

Cache<T, TCached1, TCached2, TCached3, TCached4, TNonCached>

Utility for deconstructing objects into cacheable and non-cacheable components and sharing the parts that are cacheable.

CacheStorage<T>

Basic cache storage implementation.

ConcurrentMemoizationCacheFactory

Memoization cache factory for memoization caches that can be accessed concurrently.

Deconstructed

Static helpers for creating deconstructed containers.

Deconstructed<TCached, TNonCached>

A struct container for a deconstructed cached value.

Deconstructed<TCached1, TCached2, TNonCached>

A struct container for a deconstructed cached value.

Deconstructed<TCached1, TCached2, TCached3, TNonCached>

A struct container for a deconstructed cached value.

Deconstructed<TCached1, TCached2, TCached3, TCached4, TNonCached>

A struct container for a deconstructed cached value.

DiscardableBase<T>

Base implementation of cached reference including a finalizer.

FunctionMemoizationExtensions

Provides a set of extension methods for memoization of functions.

InternCache

Provides extension methods to create intern caches to reuse values.

LruCacheStorage<T>

Basic cache storage implementation.

MemoizationCacheBase

Base class for a cache to store memoization entries for a memoized function.

MemoizationCacheBase<T, TResult>

Base class for a cache to store memoization entries for a memoized function.

MemoizationCacheExtensions

Provides a set of extension methods for memoization caches.

MemoizationCacheFactory

Memoization cache factory for memoization caches that are not thread-safe.

MemoizationCacheFactoryExtensions

Extension methods for IMemoizationCacheFactory.

MemoizationOptions

Options to control memoization behavior.

Memoizer

Exposes factory methods to create function memoizers.

ObjectPool<T>

Generic implementation of object pooling pattern with predefined pool size limit. The main purpose is that a limited number of frequently used objects can be kept in the pool for further recycling.

ObjectPoolBase<T>

Base class for object pools.

PooledObject<T>

Struct holding a pooled object, exposing RAII capabilities to return the object to the pool upon disposal.

SynchronizedMemoizationCacheBase<T, TResult>

Base class for a cache to store memoization entries for a memoized function. Access to the cache gets synchronized through a lock.

Trimmable

Provides a set of methods to work with trimmable objects.

ValueOrError

Provides a set of factory methods to create objects that represent a value or an error.

ValueOrErrorKind

Enumeration indicating whether an object represents a value or an error.

WeakMemoizationCacheFactory

Memoization cache factory for memoization caches that do not keep cache keys alive.

WeakMemoizationCacheFactoryExtensions

Extension methods for IWeakMemoizationCacheFactory.

Interfaces

ICache<T>

Implementation of an object cache.

ICacheStorage<T>

Interface for reference counting storage underlying a cache.

IClearable

Represents an object that can be cleared.

IDiscardable<T>

An interface for disposable references to objects.

IFreeable

Represents an object that can be freed.

IInternCache<T>

Interface for caches used to intern reused values of the specified type.

IMemoizationCache

Interface representing a cache to store memoization entries for a memoized function.

IMemoizationCache<T, TResult>

Interface representing a cache to store memoization entries for a memoized function.

IMemoizationCacheEntryMetrics

Interface used to access metrics on memoization cache entries for ranking purposes.

IMemoizationCacheFactory

Interface for memoization cache factories.

IMemoizedDelegate<TDelegate>

Representation of a memoized delegate including a reference to the memoization cache.

IMemoizer

Interface for function memoizers.

IObjectPool<T>

Interface for object pools.

IObjectPoolAllocateFree<T>

Interface for object pools with "alloc" and "free" functions.

IObjectPoolNew<T>

Interface for object pools with a "new" operator.

IReadOnlyIndexed

Interface for indexable objects.

IReference<T>

An interface for references to objects.

ITrimmable<T>

Interface for data structures that can be trimmed.

IValueOrError<T>

Interface for objects that represent a value or an error.

IWeakInternCache<T>

Interface for caches used to intern reused values of the specified type. This type of cache support trimming of entries for values that are no longer used.

IWeakMemoizationCacheFactory

Interface for weak memoization cache factories.

IWeakMemoizer

Interface for function memoizers that don't keep function arguments alive by the memoization cache.

In This Article
Back to top Generated by DocFX