ReusableResourceStore<TResource,TConstructorParameter> Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
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
- 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>) |