Compartilhar via


ReusableResourceStore<TResource,TConstructorParameter> Class

Definition

Stores a resource that requires a single constructor parameter for instantiation. See ReusableResourceStoreBase for more information.

generic <typename TResource, typename TConstructorParameter>
 where TResource : classpublic ref class ReusableResourceStore abstract : Microsoft::VisualStudio::Utilities::ReusableResourceStoreBase<TResource>
public abstract class ReusableResourceStore<TResource,TConstructorParameter> : Microsoft.VisualStudio.Utilities.ReusableResourceStoreBase<TResource> where TResource : class
type ReusableResourceStore<'Resource, 'ConstructorParameter (requires 'Resource : null)> = class
    inherit ReusableResourceStoreBase<'Resource (requires 'Resource : null)>
Public MustInherit Class ReusableResourceStore(Of TResource, TConstructorParameter)
Inherits ReusableResourceStoreBase(Of TResource)

Type Parameters

TResource

The type of resource to store.

TConstructorParameter

The type of the first constructor parameter for the resource.

Inheritance
ReusableResourceStore<TResource,TConstructorParameter>
Derived

Constructors

ReusableResourceStore<TResource,TConstructorParameter>()

Initializes a new instance of ReusableResourceStore.

Methods

Acquire(TConstructorParameter)

Acquires a cached instance of the resource, or allocates a new instance if none are currently available.

AcquireCore()

Gets access to the resource stored by this object, and removes the resource so that subsequent callers cannot be handed the same resource at the same time.

(Inherited from ReusableResourceStoreBase<TResource>)
Allocate(TConstructorParameter)

Allocates a new instance of the resource when one is not available in the cache.

CanReuse(TResource, TConstructorParameter)

Validates that an already-cached resource value is safe to reuse when Acquire is called.

Cleanup(TResource)

Immediately before releasing an object, performs cleanup on that object. This might be necessary to clean up state stored in the object to prevent leaking memory.

(Inherited from ReusableResourceStoreBase<TResource>)

Applies to