Langage

Dispatcher.Invoke Méthode

Définition

Exécute le délégué spécifié de manière synchrone sur le thread auquel il Dispatcher est associé.

Surcharges

Nom Description
Invoke(DispatcherPriority, TimeSpan, Delegate, Object, Object[])

Exécute le délégué spécifié à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

Invoke(DispatcherPriority, TimeSpan, Delegate, Object)

Exécute le délégué spécifié à la priorité spécifiée avec l’argument spécifié de manière synchrone sur le thread auquel il Dispatcher est associé.

Invoke(DispatcherPriority, Delegate, Object, Object[])

Exécute le délégué spécifié à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

Invoke(Action, DispatcherPriority, CancellationToken, TimeSpan)

Exécute la synchronisation spécifiée Action à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

Invoke(DispatcherPriority, TimeSpan, Delegate)

Exécute le délégué spécifié de manière synchrone à la priorité spécifiée et avec la valeur de délai d’attente spécifiée sur le thread Dispatcher créé.

Invoke(DispatcherPriority, Delegate, Object)

Exécute le délégué spécifié à la priorité spécifiée avec l’argument spécifié de manière synchrone sur le thread auquel il Dispatcher est associé.

Invoke(Delegate, TimeSpan, DispatcherPriority, Object[])

Exécute le délégué spécifié dans l’intervalle de temps désigné à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

Invoke(Delegate, TimeSpan, Object[])

Exécute le délégué spécifié dans l’intervalle de temps désigné à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

Invoke(Action, DispatcherPriority, CancellationToken)

Exécute la synchronisation spécifiée Action à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

Invoke(DispatcherPriority, Delegate)

Exécute le délégué spécifié de manière synchrone au niveau de la priorité spécifiée sur le thread auquel il Dispatcher est associé.

Invoke(Delegate, Object[])

Exécute le délégué spécifié avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

Invoke(Action, DispatcherPriority)

Exécute la synchronisation spécifiée Action à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

Invoke(Action)

Exécute le thread spécifié Action de manière synchrone à laquelle il Dispatcher est associé.

Invoke(Delegate, DispatcherPriority, Object[])

Exécute le délégué spécifié à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

Invoke<TResult>(Func<TResult>)

Exécute le thread spécifié Func<TResult> de manière synchrone à laquelle il Dispatcher est associé.

Invoke<TResult>(Func<TResult>, DispatcherPriority)

Exécute la synchronisation spécifiée Func<TResult> à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

Invoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken)

Exécute la synchronisation spécifiée Func<TResult> à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

Invoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken, TimeSpan)

Exécute la synchronisation spécifiée Func<TResult> à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

Exemples

L’exemple suivant place un délégué sur un Dispatcher point d’utilisation NormalInvoke.

// Places the delegate onto the UI Thread's Dispatcher
private void timer_Elapsed(object sender, ElapsedEventArgs e)
{
    // Place delegate on the Dispatcher.
    this.Dispatcher.Invoke(DispatcherPriority.Normal,
        new TimerDispatcherDelegate(TimerWorkItem));
}
' Places the delegate onto the UI Thread's Dispatcher
Private Sub timer_Elapsed(ByVal sender As Object, ByVal e As ElapsedEventArgs)
    ' Place delegate on the Dispatcher.
    Me.Dispatcher.Invoke(DispatcherPriority.Normal, New TimerDispatcherDelegate(AddressOf TimerWorkItem))
End Sub

Remarques

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

Invoke(DispatcherPriority, TimeSpan, Delegate, Object, Object[])

Exécute le délégué spécifié à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, TimeSpan timeout, Delegate ^ method, System::Object ^ arg, ... cli::array <System::Object ^> ^ args);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, TimeSpan timeout, Delegate method, object arg, params object[] args);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * TimeSpan * Delegate * obj * obj[] -> obj
Public Function Invoke (priority As DispatcherPriority, timeout As TimeSpan, method As Delegate, arg As Object, ParamArray args As Object()) As Object

Paramètres

priority
DispatcherPriority

Priorité, par rapport aux autres opérations en attente dans la Dispatcher file d’attente d’événements, avec laquelle la méthode spécifiée est appelée.

timeout
TimeSpan

Durée maximale d’attente du démarrage de l’opération. Une fois l’opération démarrée, elle se termine avant que cette méthode ne retourne. Pour spécifier une attente infinie, utilisez la valeur -1. Dans un appel de même thread, toute autre valeur négative est convertie en -1, ce qui entraîne une attente infinie. Dans un appel interthread, toute autre valeur négative lève un ArgumentOutOfRangeException.

method
Delegate

Délégué à une méthode qui accepte plusieurs arguments, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

arg
Object

Objet à passer en tant qu’argument à la méthode spécifiée.

args
Object[]

Tableau d’objets à passer en tant qu’arguments à la méthode spécifiée.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Attributs

Exceptions

priority est égal à Inactive.

priority n’est pas valide DispatcherPriority.

method a la valeur null.

timeout est un nombre négatif autre que -1, et cette méthode a été appelée entre les threads.

Remarques

arg peut être null si un argument n’est pas nécessaire.

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(DispatcherPriority, TimeSpan, Delegate, Object)

Exécute le délégué spécifié à la priorité spécifiée avec l’argument spécifié de manière synchrone sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, TimeSpan timeout, Delegate ^ method, System::Object ^ arg);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, TimeSpan timeout, Delegate method, object arg);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * TimeSpan * Delegate * obj -> obj
Public Function Invoke (priority As DispatcherPriority, timeout As TimeSpan, method As Delegate, arg As Object) As Object

Paramètres

priority
DispatcherPriority

Priorité, par rapport aux autres opérations en attente dans la Dispatcher file d’attente d’événements, avec laquelle la méthode spécifiée est appelée.

timeout
TimeSpan

Durée maximale d’attente du démarrage de l’opération. Une fois l’opération démarrée, elle se termine avant que cette méthode ne retourne. Pour spécifier une attente infinie, utilisez la valeur -1. Dans un appel de même thread, toute autre valeur négative est convertie en -1, ce qui entraîne une attente infinie. Dans un appel interthread, toute autre valeur négative lève un ArgumentOutOfRangeException.

method
Delegate

Délégué à une méthode qui accepte plusieurs arguments, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

arg
Object

Objet à passer en tant qu’argument à la méthode donnée. Cela peut être null si aucun argument n’est nécessaire.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Attributs

Exceptions

priority est égal à Inactive.

priority n’est pas une priorité valide.

method a la valeur null.

Remarques

arg peut être null si un argument n’est pas nécessaire

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(DispatcherPriority, Delegate, Object, Object[])

Exécute le délégué spécifié à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, Delegate ^ method, System::Object ^ arg, ... cli::array <System::Object ^> ^ args);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, Delegate method, object arg, params object[] args);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * Delegate * obj * obj[] -> obj
Public Function Invoke (priority As DispatcherPriority, method As Delegate, arg As Object, ParamArray args As Object()) As Object

Paramètres

priority
DispatcherPriority

Priorité, par rapport aux autres opérations en attente dans la Dispatcher file d’attente d’événements, avec laquelle la méthode spécifiée est appelée.

method
Delegate

Délégué à une méthode qui accepte plusieurs arguments, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

arg
Object

Objet à passer en tant qu’argument à la méthode donnée.

args
Object[]

Tableau d’objets à passer en tant qu’arguments à la méthode donnée.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Attributs

Exceptions

priority est égal à Inactive.

priority n’est pas une priorité valide.

method a la valeur null.

Remarques

arg peut être null si un argument n’est pas nécessaire

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(Action, DispatcherPriority, CancellationToken, TimeSpan)

Exécute la synchronisation spécifiée Action à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

public:
 void Invoke(Action ^ callback, System::Windows::Threading::DispatcherPriority priority, System::Threading::CancellationToken cancellationToken, TimeSpan timeout);
public void Invoke(Action callback, System.Windows.Threading.DispatcherPriority priority, System.Threading.CancellationToken cancellationToken, TimeSpan timeout);
member this.Invoke : Action * System.Windows.Threading.DispatcherPriority * System.Threading.CancellationToken * TimeSpan -> unit
Public Sub Invoke (callback As Action, priority As DispatcherPriority, cancellationToken As CancellationToken, timeout As TimeSpan)

Paramètres

callback
Action

Délégué d’action à appeler via le répartiteur.

priority
DispatcherPriority

Priorité qui détermine l’ordre dans lequel le rappel spécifié est appelé par rapport aux autres opérations en attente dans le Dispatcher.

cancellationToken
CancellationToken

Objet qui indique s’il faut annuler l’action.

timeout
TimeSpan

Durée maximale d’attente du démarrage de l’opération. Une fois l’opération démarrée, elle se termine avant que cette méthode ne retourne. Pour spécifier une attente infinie, utilisez la valeur -1. Dans un appel de même thread, toute autre valeur négative est convertie en -1, ce qui entraîne une attente infinie. Dans un appel interthread, toute autre valeur négative lève un ArgumentOutOfRangeException.

Exceptions

callback a la valeur null.

timeout est un nombre négatif autre que -1, et cette méthode a été appelée entre les threads.

priority n’est pas une priorité valide.

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

S’applique à

Invoke(DispatcherPriority, TimeSpan, Delegate)

Exécute le délégué spécifié de manière synchrone à la priorité spécifiée et avec la valeur de délai d’attente spécifiée sur le thread Dispatcher créé.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, TimeSpan timeout, Delegate ^ method);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, TimeSpan timeout, Delegate method);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * TimeSpan * Delegate -> obj
Public Function Invoke (priority As DispatcherPriority, timeout As TimeSpan, method As Delegate) As Object

Paramètres

priority
DispatcherPriority

Priorité, par rapport aux autres opérations en attente dans la Dispatcher file d’attente d’événements, avec laquelle la méthode spécifiée est appelée.

timeout
TimeSpan

Durée maximale d’attente du démarrage de l’opération. Une fois l’opération démarrée, elle se termine avant que cette méthode ne retourne. Pour spécifier une attente infinie, utilisez la valeur -1. Dans un appel de même thread, toute autre valeur négative est convertie en -1, ce qui entraîne une attente infinie. Dans un appel interthread, toute autre valeur négative lève un ArgumentOutOfRangeException.

method
Delegate

Délégué à une méthode qui ne prend aucun argument, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Attributs

Exceptions

method a la valeur null.

timeout est un nombre négatif autre que -1, et cette méthode a été appelée entre les threads.

priority est égal à Inactive.

priority n’est pas une priorité valide.

Remarques

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(DispatcherPriority, Delegate, Object)

Exécute le délégué spécifié à la priorité spécifiée avec l’argument spécifié de manière synchrone sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, Delegate ^ method, System::Object ^ arg);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, Delegate method, object arg);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * Delegate * obj -> obj
Public Function Invoke (priority As DispatcherPriority, method As Delegate, arg As Object) As Object

Paramètres

priority
DispatcherPriority

Priorité, par rapport aux autres opérations en attente dans la Dispatcher file d’attente d’événements, avec laquelle la méthode spécifiée est appelée.

method
Delegate

Délégué à une méthode qui accepte un argument, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

arg
Object

Objet à passer en tant qu’argument à la méthode donnée.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Attributs

Exceptions

priority est égal à Inactive.

priority n’est pas une priorité valide.

method a la valeur null.

Remarques

arg peut être null si un argument n’est pas nécessaire

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(Delegate, TimeSpan, DispatcherPriority, Object[])

Exécute le délégué spécifié dans l’intervalle de temps désigné à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(Delegate ^ method, TimeSpan timeout, System::Windows::Threading::DispatcherPriority priority, ... cli::array <System::Object ^> ^ args);
public object Invoke(Delegate method, TimeSpan timeout, System.Windows.Threading.DispatcherPriority priority, params object[] args);
member this.Invoke : Delegate * TimeSpan * System.Windows.Threading.DispatcherPriority * obj[] -> obj
Public Function Invoke (method As Delegate, timeout As TimeSpan, priority As DispatcherPriority, ParamArray args As Object()) As Object

Paramètres

method
Delegate

Délégué à une méthode qui prend les paramètres spécifiés dans args, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

timeout
TimeSpan

Durée maximale d’attente du démarrage de l’opération. Une fois l’opération démarrée, elle se termine avant que cette méthode ne retourne. Pour spécifier une attente infinie, utilisez la valeur -1. Dans un appel de même thread, toute autre valeur négative est convertie en -1, ce qui entraîne une attente infinie. Dans un appel interthread, toute autre valeur négative lève un ArgumentOutOfRangeException.

priority
DispatcherPriority

Priorité, par rapport aux autres opérations en attente dans la Dispatcher file d’attente d’événements, avec laquelle la méthode spécifiée est appelée.

args
Object[]

Tableau d’objets à passer en tant qu’arguments à la méthode donnée. Peut être null.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Exceptions

method a la valeur null.

timeout est un nombre négatif autre que -1, et cette méthode a été appelée entre les threads.

priority est égal à Inactive.

priority n’est pas une priorité valide.

Remarques

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(Delegate, TimeSpan, Object[])

Exécute le délégué spécifié dans l’intervalle de temps désigné à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(Delegate ^ method, TimeSpan timeout, ... cli::array <System::Object ^> ^ args);
public object Invoke(Delegate method, TimeSpan timeout, params object[] args);
member this.Invoke : Delegate * TimeSpan * obj[] -> obj
Public Function Invoke (method As Delegate, timeout As TimeSpan, ParamArray args As Object()) As Object

Paramètres

method
Delegate

Délégué à une méthode qui prend les paramètres spécifiés dans args, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

timeout
TimeSpan

Durée maximale d’attente du démarrage de l’opération. Toutefois, une fois l’opération démarrée, elle se termine avant que cette méthode ne retourne. Pour spécifier une attente infinie, utilisez la valeur -1. Dans un appel de même thread, toute autre valeur négative est convertie en -1, ce qui entraîne une attente infinie. Dans un appel interthread, toute autre valeur négative lève un ArgumentOutOfRangeException.

args
Object[]

Tableau d’objets à passer en tant qu’arguments à la méthode donnée. Peut être null si aucun argument n’est nécessaire.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Exceptions

method a la valeur null.

timeout est un nombre négatif autre que -1 et vous appelez des threads.

Remarques

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(Action, DispatcherPriority, CancellationToken)

Exécute la synchronisation spécifiée Action à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

public:
 void Invoke(Action ^ callback, System::Windows::Threading::DispatcherPriority priority, System::Threading::CancellationToken cancellationToken);
public void Invoke(Action callback, System.Windows.Threading.DispatcherPriority priority, System.Threading.CancellationToken cancellationToken);
member this.Invoke : Action * System.Windows.Threading.DispatcherPriority * System.Threading.CancellationToken -> unit
Public Sub Invoke (callback As Action, priority As DispatcherPriority, cancellationToken As CancellationToken)

Paramètres

callback
Action

Délégué à appeler via le répartiteur.

priority
DispatcherPriority

Priorité qui détermine l’ordre dans lequel le rappel spécifié est appelé par rapport aux autres opérations en attente dans le Dispatcher.

cancellationToken
CancellationToken

Objet qui indique s’il faut annuler l’action.

Exceptions

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

S’applique à

Invoke(DispatcherPriority, Delegate)

Exécute le délégué spécifié de manière synchrone au niveau de la priorité spécifiée sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(System::Windows::Threading::DispatcherPriority priority, Delegate ^ method);
[System.ComponentModel.Browsable(false)]
public object Invoke(System.Windows.Threading.DispatcherPriority priority, Delegate method);
[<System.ComponentModel.Browsable(false)>]
member this.Invoke : System.Windows.Threading.DispatcherPriority * Delegate -> obj
Public Function Invoke (priority As DispatcherPriority, method As Delegate) As Object

Paramètres

priority
DispatcherPriority

Priorité avec laquelle la méthode spécifiée est appelée, par rapport aux autres opérations en attente dans la Dispatcher file d’attente d’événements.

method
Delegate

Délégué à une méthode qui ne prend aucun argument, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Attributs

Exceptions

priority est égal à Inactive.

priority n’est pas une priorité valide.

method a la valeur null.

Exemples

L’exemple suivant place un délégué sur un Dispatcher point d’utilisation NormalInvoke.

// Places the delegate onto the UI Thread's Dispatcher
private void timer_Elapsed(object sender, ElapsedEventArgs e)
{
    // Place delegate on the Dispatcher.
    this.Dispatcher.Invoke(DispatcherPriority.Normal,
        new TimerDispatcherDelegate(TimerWorkItem));
}
' Places the delegate onto the UI Thread's Dispatcher
Private Sub timer_Elapsed(ByVal sender As Object, ByVal e As ElapsedEventArgs)
    ' Place delegate on the Dispatcher.
    Me.Dispatcher.Invoke(DispatcherPriority.Normal, New TimerDispatcherDelegate(AddressOf TimerWorkItem))
End Sub

Remarques

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(Delegate, Object[])

Exécute le délégué spécifié avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(Delegate ^ method, ... cli::array <System::Object ^> ^ args);
public object Invoke(Delegate method, params object[] args);
member this.Invoke : Delegate * obj[] -> obj
Public Function Invoke (method As Delegate, ParamArray args As Object()) As Object

Paramètres

method
Delegate

Délégué à une méthode qui prend les paramètres spécifiés dans args, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

args
Object[]

Tableau d’objets à passer en tant qu’arguments à la méthode donnée. Peut être null.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Remarques

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke(Action, DispatcherPriority)

Exécute la synchronisation spécifiée Action à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

public:
 void Invoke(Action ^ callback, System::Windows::Threading::DispatcherPriority priority);
public void Invoke(Action callback, System.Windows.Threading.DispatcherPriority priority);
member this.Invoke : Action * System.Windows.Threading.DispatcherPriority -> unit
Public Sub Invoke (callback As Action, priority As DispatcherPriority)

Paramètres

callback
Action

Délégué à appeler via le répartiteur.

priority
DispatcherPriority

Priorité qui détermine l’ordre dans lequel le rappel spécifié est appelé par rapport aux autres opérations en attente dans le Dispatcher.

S’applique à

Invoke(Action)

Exécute le thread spécifié Action de manière synchrone à laquelle il Dispatcher est associé.

public:
 void Invoke(Action ^ callback);
public void Invoke(Action callback);
member this.Invoke : Action -> unit
Public Sub Invoke (callback As Action)

Paramètres

callback
Action

Délégué à appeler via le répartiteur.

Remarques

La priorité par défaut est DispatcherPriority.Send.

S’applique à

Invoke(Delegate, DispatcherPriority, Object[])

Exécute le délégué spécifié à la priorité spécifiée avec les arguments spécifiés de manière synchrone sur le thread auquel il Dispatcher est associé.

public:
 System::Object ^ Invoke(Delegate ^ method, System::Windows::Threading::DispatcherPriority priority, ... cli::array <System::Object ^> ^ args);
public object Invoke(Delegate method, System.Windows.Threading.DispatcherPriority priority, params object[] args);
member this.Invoke : Delegate * System.Windows.Threading.DispatcherPriority * obj[] -> obj
Public Function Invoke (method As Delegate, priority As DispatcherPriority, ParamArray args As Object()) As Object

Paramètres

method
Delegate

Délégué à une méthode qui prend les paramètres spécifiés dans args, qui est envoyé (push) dans la Dispatcher file d’attente d’événements.

priority
DispatcherPriority

Priorité avec laquelle la méthode spécifiée est appelée, par rapport aux autres opérations en attente dans la Dispatcher file d’attente d’événements.

args
Object[]

Tableau d’objets à passer en tant qu’arguments à la méthode donnée. Peut être null.

Retours

Valeur de retour du délégué appelé ou null si le délégué n’a aucune valeur de retour.

Remarques

Dans WPF, seul le thread qui a créé un DispatcherObject objet peut accéder à cet objet. Par exemple, un thread d’arrière-plan qui est désactivé à partir du thread d’interface utilisateur principal ne peut pas mettre à jour le contenu d’un Button thread d’interface utilisateur créé sur le thread d’interface utilisateur. Pour que le thread d’arrière-plan accède à la propriété Contenu du Buttonthread d’arrière-plan, le thread d’arrière-plan doit déléguer le travail au Dispatcher thread d’interface utilisateur associé. Cette opération est effectuée à l’aide de l’une ou l’autre Invoke des opérations BeginInvokesuivantes : Invoke est synchrone et BeginInvoke est asynchrone. L’opération est ajoutée à la file d’attente d’événements du Dispatcher fichier spécifié DispatcherPriority.

Invoke est une opération synchrone ; par conséquent, le contrôle ne revient pas à l’objet appelant tant qu’après le retour du rappel.

S’applique à

Invoke<TResult>(Func<TResult>)

Exécute le thread spécifié Func<TResult> de manière synchrone à laquelle il Dispatcher est associé.

public:
generic <typename TResult>
 TResult Invoke(Func<TResult> ^ callback);
public TResult Invoke<TResult>(Func<TResult> callback);
member this.Invoke : Func<'Result> -> 'Result
Public Function Invoke(Of TResult) (callback As Func(Of TResult)) As TResult

Paramètres de type

TResult

Type de valeur de retour du délégué spécifié.

Paramètres

callback
Func<TResult>

Délégué à appeler via le répartiteur.

Retours

TResult

Valeur retournée par callback.

S’applique à

Invoke<TResult>(Func<TResult>, DispatcherPriority)

Exécute la synchronisation spécifiée Func<TResult> à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

public:
generic <typename TResult>
 TResult Invoke(Func<TResult> ^ callback, System::Windows::Threading::DispatcherPriority priority);
public TResult Invoke<TResult>(Func<TResult> callback, System.Windows.Threading.DispatcherPriority priority);
member this.Invoke : Func<'Result> * System.Windows.Threading.DispatcherPriority -> 'Result
Public Function Invoke(Of TResult) (callback As Func(Of TResult), priority As DispatcherPriority) As TResult

Paramètres de type

TResult

Type de valeur de retour du délégué spécifié.

Paramètres

callback
Func<TResult>

Délégué à appeler via le répartiteur.

priority
DispatcherPriority

Priorité qui détermine l’ordre dans lequel le rappel spécifié est appelé par rapport aux autres opérations en attente dans le Dispatcher.

Retours

TResult

Valeur retournée par callback.

S’applique à

Invoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken)

Exécute la synchronisation spécifiée Func<TResult> à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

public:
generic <typename TResult>
 TResult Invoke(Func<TResult> ^ callback, System::Windows::Threading::DispatcherPriority priority, System::Threading::CancellationToken cancellationToken);
public TResult Invoke<TResult>(Func<TResult> callback, System.Windows.Threading.DispatcherPriority priority, System.Threading.CancellationToken cancellationToken);
member this.Invoke : Func<'Result> * System.Windows.Threading.DispatcherPriority * System.Threading.CancellationToken -> 'Result
Public Function Invoke(Of TResult) (callback As Func(Of TResult), priority As DispatcherPriority, cancellationToken As CancellationToken) As TResult

Paramètres de type

TResult

Type de valeur de retour du délégué spécifié.

Paramètres

callback
Func<TResult>

Délégué à appeler via le répartiteur.

priority
DispatcherPriority

Priorité qui détermine l’ordre dans lequel le rappel spécifié est appelé par rapport aux autres opérations en attente dans le Dispatcher.

cancellationToken
CancellationToken

Objet qui indique s’il faut annuler l’opération.

Retours

TResult

Valeur retournée par callback.

Exceptions

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

S’applique à

Invoke<TResult>(Func<TResult>, DispatcherPriority, CancellationToken, TimeSpan)

Exécute la synchronisation spécifiée Func<TResult> à la priorité spécifiée sur le thread auquel il Dispatcher est associé.

public:
generic <typename TResult>
 TResult Invoke(Func<TResult> ^ callback, System::Windows::Threading::DispatcherPriority priority, System::Threading::CancellationToken cancellationToken, TimeSpan timeout);
public TResult Invoke<TResult>(Func<TResult> callback, System.Windows.Threading.DispatcherPriority priority, System.Threading.CancellationToken cancellationToken, TimeSpan timeout);
member this.Invoke : Func<'Result> * System.Windows.Threading.DispatcherPriority * System.Threading.CancellationToken * TimeSpan -> 'Result
Public Function Invoke(Of TResult) (callback As Func(Of TResult), priority As DispatcherPriority, cancellationToken As CancellationToken, timeout As TimeSpan) As TResult

Paramètres de type

TResult

Type de valeur de retour du délégué spécifié.

Paramètres

callback
Func<TResult>

Délégué à appeler via le répartiteur.

priority
DispatcherPriority

Priorité qui détermine l’ordre dans lequel le rappel spécifié est appelé par rapport aux autres opérations en attente dans le Dispatcher.

cancellationToken
CancellationToken

Objet qui indique s’il faut annuler l’opération.

timeout
TimeSpan

Durée maximale d’attente du démarrage de l’opération. Une fois l’opération démarrée, elle se termine avant que cette méthode ne retourne. Pour spécifier une attente infinie, utilisez la valeur -1. Dans un appel de même thread, toute autre valeur négative est convertie en -1, ce qui entraîne une attente infinie. Dans un appel interthread, toute autre valeur négative lève un ArgumentOutOfRangeException.

Retours

TResult

Valeur retournée par callback.

Exceptions

callback a la valeur null.

timeout est un nombre négatif autre que -1 et la méthode a été appelée entre les threads.

priority n’est pas une priorité valide.

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

S’applique à