LifetimeContext Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет узел в дереве времени существования.
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
- Наследование
- Реализации
Комментарии
Объект LifetimeContext — это единица общего доступа для общих частей. Он управляет удалением привязанных частей и может использоваться для извлечения экземпляров в рамках существующей операции композиции или в качестве основы новой операции композиции. Отдельный контекст времени существования можно пометить, чтобы содержать части, ограниченные определенными границами общего доступа.
Этот объект содержит две части независимо защищенного общего состояния: общие экземпляры частей и привязанные экземпляры частей.
Общий экземпляр части является заблокированным, читаемым и не приводит к проблемам, если он добавляется во время удаления. Она защищена блокировкой. Логика активации неизбежно вызывается под этой блокировкой.
Экземпляр привязанной части всегда защищен блокировкой thisи никогда не должен записываться в после удаления. Экземпляр привязанной части устанавливается null под блокировкой метода Dispose() . Если запись была разрешена после удаления для экземпляра связанной части, это приведет к тому, что удаленные части не будут освобождены. Метод dispose для связанной части вызывается за пределами блокировки.
Методы
| Имя | Описание |
|---|---|
| AddBoundInstance(IDisposable) |
Привязывает время существования удаленной части к этому контексту времени существования. |
| AllocateSharingId() |
Создает идентификатор, который можно использовать для поиска экземпляров общих частей. |
| Dispose() |
Освобождает контекст времени существования и все экземпляры частей, привязанные к нему. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| FindContextWithin(String) |
Находит самый широкий контекст времени существования во всех указанных границах общего доступа. |
| GetExport(CompositionContract) |
Извлекает экспорт, соответствующий указанному контракту. (Унаследовано от CompositionContext) |
| GetExport(Type, String) |
Извлекает экспорт, соответствующий указанному имени и типу. (Унаследовано от CompositionContext) |
| GetExport(Type) |
Извлекает экспорт, соответствующий указанному типу. (Унаследовано от CompositionContext) |
| GetExport<TExport>() |
Извлекает экспорт, соответствующий указанному параметру универсального типа. (Унаследовано от CompositionContext) |
| GetExport<TExport>(String) |
Извлекает экспорт, соответствующий указанному параметру универсального типа и имени контракта. (Унаследовано от CompositionContext) |
| GetExports(Type, String) |
Извлекает все экспорты, соответствующие указанному имени контракта и типу. (Унаследовано от CompositionContext) |
| GetExports(Type) |
Извлекает коллекцию всех экспортов, которые соответствуют указанному типу. (Унаследовано от CompositionContext) |
| GetExports<TExport>() |
Извлекает все экспорты, соответствующие указанному параметру универсального типа. (Унаследовано от CompositionContext) |
| GetExports<TExport>(String) |
Извлекает все экспорты, соответствующие указанному параметру универсального типа и имени контракта. (Унаследовано от CompositionContext) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetOrCreate(Int32, CompositionOperation, CompositeActivator) |
Извлекает общий экземпляр части с указанным идентификатором или если экземпляр части не найден, создает и предоставляет общий доступ к экземпляру части с помощью указанного создателя в рамках указанной операции. |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строковое представление этого LifetimeContext объекта. |
| TryGetExport(CompositionContract, Object) |
Извлекает экземпляр контракта из контекста композиции. |
| TryGetExport(Type, Object) |
Возвращает экспорт, соответствующий указанному типу, или возвращается |
| TryGetExport(Type, String, Object) |
Возвращает экспорт, соответствующий указанному имени контракта и типу, или возвращается |
| TryGetExport<TExport>(String, TExport) |
Возвращает экспорт, соответствующий указанному параметру универсального типа и имени контракта, или возвращается |
| TryGetExport<TExport>(TExport) |
Возвращает экспорт, соответствующий указанному параметру универсального типа, или возвращается |
Методы расширения
| Имя | Описание |
|---|---|
| SatisfyImports(CompositionContext, Object, AttributedModelProvider) |
Удовлетворяет импорту указанного объекта из указанного контекста с помощью указанных соглашений. |
| SatisfyImports(CompositionContext, Object) |
Удовлетворяет импорту указанного объекта из указанного контекста. |