ISynchronizeInvoke Interfaz

Definición

Proporciona un medio para ejecutar de forma sincrónica o asincrónica un delegado.Provides a way to synchronously or asynchronously execute a delegate.

public interface class ISynchronizeInvoke
public interface ISynchronizeInvoke
type ISynchronizeInvoke = interface
Public Interface ISynchronizeInvoke
Derivado

Comentarios

La ISynchronizeInvoke interfaz proporciona comunicación sincrónica y asincrónica entre objetos sobre la aparición de un evento.The ISynchronizeInvoke interface provides synchronous and asynchronous communication between objects about the occurrence of an event. Los objetos que implementan esta interfaz pueden recibir la notificación de que se ha producido un evento y pueden responder a las consultas sobre el evento.Objects that implement this interface can receive notification that an event has occurred, and they can respond to queries about the event. De esta manera, los clientes pueden asegurarse de que se ha procesado una solicitud antes de enviar una solicitud posterior que depende de la finalización de la primera.In this way, clients can ensure that one request has been processed before they submit a subsequent request that depends on completion of the first.

La ISynchronizeInvoke clase proporciona dos maneras de invocar un proceso:The ISynchronizeInvoke class provides two ways to invoke a process:

  1. De forma asincrónica, utilizando BeginInvoke el método.Asynchronously, by using the BeginInvoke method. BeginInvokeinicia un proceso y, a continuación, vuelve inmediatamente.BeginInvoke starts a process and then returns immediately. Use EndInvoke para esperar a que BeginInvoke finalice el proceso de inicio.Use EndInvoke to wait until the process started by BeginInvoke completes.

  2. Sincrónicamente, mediante Invoke el método.Synchronously, by using the Invoke method. Invokeinicia un proceso, espera hasta que se completa y, a continuación, devuelve.Invoke starts a process, waits until it completes, and then returns. Se Invoke usa cuando el subproceso principal del control es diferente del subproceso que realiza la llamada para calcular las referencias de la llamada al subproceso adecuado.Use Invoke when the control's main thread is different from the calling thread to marshal the call to the proper thread.

Nota

El HostProtectionAttribute atributo que se aplica a esta clase tiene Resources el siguiente valor Synchronization de propiedad: | ExternalThreading.The HostProtectionAttribute attribute applied to this class has the following Resources property value: Synchronization | ExternalThreading. El atributo HostProtectionAttribute no afecta a las aplicaciones de escritorio (que normalmente se inician haciendo doble clic en un icono, escribiendo un comando o introduciendo una dirección URL en el explorador).The HostProtectionAttribute does not affect desktop applications (which are typically started by double-clicking an icon, typing a command, or entering a URL in a browser). Para obtener más información, vea HostProtectionAttribute la clase o SQL Server atributos de protección de host y de programación.For more information, see the HostProtectionAttribute class or SQL Server Programming and Host Protection Attributes.

Propiedades

InvokeRequired

Obtiene un valor que indica si el elemento que realiza la llamada debe llamar a Invoke(Delegate, Object[]) cuando se llame a un objeto que implemente esta interfaz.Gets a value indicating whether the caller must call Invoke(Delegate, Object[]) when calling an object that implements this interface.

Métodos

BeginInvoke(Delegate, Object[])

De forma asincrónica ejecuta el delegado en el subproceso que creó este objeto.Asynchronously executes the delegate on the thread that created this object.

EndInvoke(IAsyncResult)

Espera a que finalice el proceso iniciado mediante la llamada a BeginInvoke(Delegate, Object[]) y, a continuación, devuelve el valor generado por el proceso.Waits until the process started by calling BeginInvoke(Delegate, Object[]) completes, and then returns the value generated by the process.

Invoke(Delegate, Object[])

De forma sincrónica ejecuta el delegado en el subproceso que creó este objeto y calcula las referencias de la llamada en el subproceso de creación.Synchronously executes the delegate on the thread that created this object and marshals the call to the creating thread.

Se aplica a

Consulte también: