ISynchronizeInvoke Interface

Définition

Fournit un moyen d'exécuter un délégué de manière synchrone ou asynchrone.Provides a way to synchronously or asynchronously execute a delegate.

public interface class ISynchronizeInvoke
public interface ISynchronizeInvoke
type ISynchronizeInvoke = interface
Public Interface ISynchronizeInvoke
Dérivé

Remarques

L’interface ISynchronizeInvoke fournit une communication synchrone et asynchrone entre des objets sur l’occurrence d’un événement.The ISynchronizeInvoke interface provides synchronous and asynchronous communication between objects about the occurrence of an event. Les objets qui implémentent cette interface peuvent recevoir une notification indiquant qu’un événement s’est produit et ils peuvent répondre aux requêtes relatives à l’événement.Objects that implement this interface can receive notification that an event has occurred, and they can respond to queries about the event. De cette façon, les clients peuvent s’assurer qu’une demande a été traitée avant de soumettre une demande ultérieure qui dépend de l’achèvement de la première.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 classe ISynchronizeInvoke fournit deux façons d’appeler un processus :The ISynchronizeInvoke class provides two ways to invoke a process:

  1. De façon asynchrone, à l’aide de la méthode BeginInvoke.Asynchronously, by using the BeginInvoke method. BeginInvoke démarre un processus, puis le retourne immédiatement.BeginInvoke starts a process and then returns immediately. Utilisez EndInvoke pour patienter jusqu’à ce que le processus démarré par BeginInvoke se termine.Use EndInvoke to wait until the process started by BeginInvoke completes.

  2. En mode synchrone, à l’aide de la méthode Invoke.Synchronously, by using the Invoke method. Invoke démarre un processus, attend qu’il se termine, puis retourne.Invoke starts a process, waits until it completes, and then returns. Utilisez Invoke lorsque le thread principal du contrôle est différent du thread appelant pour marshaler l’appel au thread approprié.Use Invoke when the control's main thread is different from the calling thread to marshal the call to the proper thread.

Notes

L’attribut HostProtectionAttribute appliqué à cette classe a la valeur de propriété Resources suivante : | Synchronization ExternalThreading.The HostProtectionAttribute attribute applied to this class has the following Resources property value: Synchronization | ExternalThreading. HostProtectionAttribute n'affecte pas les applications bureautiques (qui sont généralement démarrées en double-cliquant sur une icône, en tapant une commande ou en entrant une URL dans un navigateur).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). Pour plus d’informations, consultez la classe HostProtectionAttribute ou SQL Server attributs de programmation et de protection de l’hôte.For more information, see the HostProtectionAttribute class or SQL Server Programming and Host Protection Attributes.

Propriétés

InvokeRequired

Obtient une valeur indiquant si l'appelant doit appeler Invoke(Delegate, Object[]) lors de l'appel d'un objet implémentant cette interface.Gets a value indicating whether the caller must call Invoke(Delegate, Object[]) when calling an object that implements this interface.

Méthodes

BeginInvoke(Delegate, Object[])

Exécute le délégué de manière asynchrone sur le thread qui a créé cet objet.Asynchronously executes the delegate on the thread that created this object.

EndInvoke(IAsyncResult)

Attend que le processus lancé en appelant BeginInvoke(Delegate, Object[]) se termine puis retourne la valeur générée par le processus.Waits until the process started by calling BeginInvoke(Delegate, Object[]) completes, and then returns the value generated by the process.

Invoke(Delegate, Object[])

Exécute le délégué de manière synchrone sur le thread qui a créé cet objet et marshale l'appel au thread créateur.Synchronously executes the delegate on the thread that created this object and marshals the call to the creating thread.

S’applique à

Voir aussi