ServiceCreatorCallback Делегат
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет механизм обратного вызова, который может создать экземпляр службы по запросу.
public delegate System::Object ^ ServiceCreatorCallback(IServiceContainer ^ container, Type ^ serviceType);
[System.Runtime.InteropServices.ComVisible(true)]
public delegate object ServiceCreatorCallback(IServiceContainer container, Type serviceType);
public delegate object ServiceCreatorCallback(IServiceContainer container, Type serviceType);
[<System.Runtime.InteropServices.ComVisible(true)>]
type ServiceCreatorCallback = delegate of IServiceContainer * Type -> obj
type ServiceCreatorCallback = delegate of IServiceContainer * Type -> obj
Public Delegate Function ServiceCreatorCallback(container As IServiceContainer, serviceType As Type) As Object
Параметры
- container
- IServiceContainer
Контейнер службы, запрашивающий создание службы.
- serviceType
- Type
Тип создаваемой службы.
Возвращаемое значение
Служба, указанная или serviceTypenull если не удалось создать службу.
- Атрибуты
Примеры
В следующем примере кода показано, как опубликовать службу с помощью функции обратного вызова.
// The following code shows how to publish a service using a callback function.
// Creates a service creator callback.
ServiceCreatorCallback^ callback1 =
gcnew ServiceCreatorCallback( this, &Sample::myCallBackMethod );
// Adds the service using its type and the service creator callback.
serviceContainer->AddService( myService::typeid, callback1 );
// The following code shows how to publish a service using a callback function.
// Creates a service creator callback.
ServiceCreatorCallback callback1 =
new ServiceCreatorCallback(myCallBackMethod);
// Adds the service using its type and the service creator callback.
serviceContainer.AddService(typeof(myService), callback1);
' The following code shows how to publish a service using a callback function.
' Creates a service creator callback.
Dim callback1 As New ServiceCreatorCallback _
(AddressOf myCallBackMethod)
' Adds the service using its type and the service creator.
serviceContainer.AddService(GetType(myService), callback1)
Комментарии
ServiceCreatorCallback предоставляет механизм публикации служб, которые можно запрашивать при необходимости, а не службы, создаваемые немедленно при загрузке конструктора. Функцию обратного вызова можно использовать, если служба не является важной и не может использоваться. Служба, опубликованная с помощью не ServiceCreatorCallback использует столько дополнительных ресурсов, сколько не запрашивается и не создается. Чтобы использовать функцию обратного вызова для публикации службы, передайте ServiceCreatorCallbackAddService метод объекта IServiceContainer.
Методы расширения
| Имя | Описание |
|---|---|
| GetMethodInfo(Delegate) |
Возвращает объект, представляющий метод, представленный указанным делегатом. |