LifetimeContext Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje uzel ve stromu životnosti.
public ref class LifetimeContext sealed : System::Composition::CompositionContext, IDisposable
public sealed class LifetimeContext : System.Composition.CompositionContext, IDisposable
type LifetimeContext = class
inherit CompositionContext
interface IDisposable
Public NotInheritable Class LifetimeContext
Inherits CompositionContext
Implements IDisposable
- Dědičnost
- Implementuje
Poznámky
Objekt LifetimeContext je jednotka sdílení sdílených částí. Řídí odstranění vázaných částí a lze je použít k načtení instancí, a to buď jako součást existující operace složení, nebo jako základ nové operace složení. Jednotlivé kontexty životnosti lze označit tak, aby obsahovaly části, které jsou omezeny konkrétními hranicemi sdílení.
Tento objekt obsahuje dva části nezávisle chráněného sdíleného stavu: instance sdílených částí a vázané instance částí.
Instance sdílené části je bez uzamčení, čitelná a nemá za následek problémy, pokud je přidána během odstraňování. Je chráněna tím, že se uzamkne sama. Logika aktivace se v rámci tohoto zámku nepovoluje.
Vázané instance části je vždy chráněna uzamčením thisa nikdy by neměla být zapsána do vyřazení. Vázaná instance části je nastavena na null pod zámkem Dispose() v metodě. Pokud by po vyřazení vázané instance dílu bylo povoleno psaní, mohlo by dojít k tomu, že uvolněné části na jedno použití nebudou uvolněny. Metoda dispose na vázané části je volána mimo zámek.
Metody
| Name | Description |
|---|---|
| AddBoundInstance(IDisposable) |
Vytvoří vazbu životnosti uvolnitelné části na tento kontext životnosti. |
| AllocateSharingId() |
Vygeneruje identifikátor, který lze použít k vyhledání instancí sdílených částí. |
| Dispose() |
Uvolní kontext životnosti a všechny instance částí vázané na ni. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| FindContextWithin(String) |
Najde nejširší kontext životnosti ve všech zadaných hranicích sdílení. |
| GetExport(CompositionContract) |
Načte export, který odpovídá zadané smlouvě. (Zděděno od CompositionContext) |
| GetExport(Type, String) |
Načte export, který odpovídá zadanému názvu a typu. (Zděděno od CompositionContext) |
| GetExport(Type) |
Načte export, který odpovídá zadanému typu. (Zděděno od CompositionContext) |
| GetExport<TExport>() |
Načte export, který odpovídá zadanému parametru obecného typu. (Zděděno od CompositionContext) |
| GetExport<TExport>(String) |
Načte export, který odpovídá zadanému parametru obecného typu a názvu kontraktu. (Zděděno od CompositionContext) |
| GetExports(Type, String) |
Načte všechny exporty, které odpovídají zadanému názvu a typu kontraktu. (Zděděno od CompositionContext) |
| GetExports(Type) |
Načte kolekci všech exportů, které odpovídají zadanému typu. (Zděděno od CompositionContext) |
| GetExports<TExport>() |
Načte všechny exporty, které odpovídají zadanému parametru obecného typu. (Zděděno od CompositionContext) |
| GetExports<TExport>(String) |
Načte všechny exporty, které odpovídají zadanému parametru obecného typu a názvu kontraktu. (Zděděno od CompositionContext) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetOrCreate(Int32, CompositionOperation, CompositeActivator) |
Načte sdílenou instanci části se zadaným ID nebo pokud instanci části nelze najít, vytvoří a nasdílí instanci části pomocí zadaného tvůrce v rámci zadané operace. |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězcovou reprezentaci tohoto LifetimeContext objektu. |
| TryGetExport(CompositionContract, Object) |
Načte instanci kontraktu z kontextu složení. |
| TryGetExport(Type, Object) |
Vrátí export, který odpovídá zadanému typu, nebo vrátí |
| TryGetExport(Type, String, Object) |
Vrátí export, který odpovídá zadanému názvu a typu kontraktu, nebo vrátí |
| TryGetExport<TExport>(String, TExport) |
Vrátí export, který odpovídá zadanému parametru obecného typu a názvu kontraktu, nebo vrátí |
| TryGetExport<TExport>(TExport) |
Vrátí export, který odpovídá zadanému parametru obecného typu, nebo vrátí |
Metody rozšíření
| Name | Description |
|---|---|
| SatisfyImports(CompositionContext, Object, AttributedModelProvider) |
Splňuje import zadaného objektu ze zadaného kontextu pomocí zadaných konvencí. |
| SatisfyImports(CompositionContext, Object) |
Splňuje import zadaného objektu ze zadaného kontextu. |