ISynchronizeInvoke Interface
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit un moyen d’exécuter de manière synchrone ou asynchrone un délégué.
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 les objets concernant l’occurrence d’un événement. Les objets qui implémentent cette interface peuvent recevoir une notification indiquant qu’un événement s’est produit et qu’ils peuvent répondre aux requêtes relatives à l’événement. De cette façon, les clients peuvent s’assurer qu’une demande a été traitée avant d’envoyer une demande ultérieure qui dépend de la fin du premier.
La ISynchronizeInvoke classe fournit deux façons d’appeler un processus :
De façon asynchrone, à l’aide de la BeginInvoke méthode. BeginInvoke démarre un processus, puis retourne immédiatement. Permet EndInvoke d’attendre que le processus commence par BeginInvoke se terminer.
De façon synchrone, à l’aide de la Invoke méthode. Invoke démarre un processus, attend qu’il se termine, puis retourne. Utilisez Invoke quand le thread principal du contrôle est différent du thread appelant pour marshaler l’appel vers le thread approprié.
Note
L’attribut HostProtectionAttribute appliqué à cette classe a la valeur de propriété suivante Resources : | SynchronizationExternalThreading . Cela HostProtectionAttribute n’affecte pas les applications de bureau (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). Pour plus d’informations, consultez la HostProtectionAttribute classe ou les attributs de programmation et de protection de l’hôte SQL Server.
Propriétés
| Nom | Description |
|---|---|
| InvokeRequired |
Obtient une valeur indiquant si l’appelant doit appeler Invoke(Delegate, Object[]) un objet qui implémente cette interface. |
Méthodes
| Nom | Description |
|---|---|
| BeginInvoke(Delegate, Object[]) |
Exécute de façon asynchrone le délégué sur le thread qui a créé cet objet. |
| EndInvoke(IAsyncResult) |
Attend que le processus démarre en appelant BeginInvoke(Delegate, Object[]) , puis retourne la valeur générée par le processus. |
| Invoke(Delegate, Object[]) |
Exécute de façon synchrone le délégué sur le thread qui a créé cet objet et marshale l’appel au thread de création. |