Langue

AsyncTask.ExecuteOnExecutor(IExecutor, Object[]) Méthode

Définition

Exécute la tâche avec les paramètres spécifiés.

[Android.Runtime.Register("executeOnExecutor", "(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/os/AsyncTask;", "")]
public Android.OS.AsyncTask? ExecuteOnExecutor(Java.Util.Concurrent.IExecutor? exec, params Java.Lang.Object[]? params);
[<Android.Runtime.Register("executeOnExecutor", "(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/os/AsyncTask;", "")>]
member this.ExecuteOnExecutor : Java.Util.Concurrent.IExecutor * Java.Lang.Object[] -> Android.OS.AsyncTask

Paramètres

exec
IExecutor

Exécuteur à utiliser. #THREAD_POOL_EXECUTOR est disponible en tant que pool de threads à l’échelle du processus pratique pour les tâches qui sont faiblement couplées.

params
Object[]

Paramètres de la tâche.

Retours

Cette instance d’AsyncTask.

Attributs

Remarques

Exécute la tâche avec les paramètres spécifiés. La tâche se retourne elle-même (ceci) afin que l’appelant puisse conserver une référence à celle-ci.

Cette méthode est généralement utilisée pour #THREAD_POOL_EXECUTOR permettre à plusieurs tâches de s’exécuter en parallèle sur un pool de threads gérés par AsyncTask. Toutefois, vous pouvez également utiliser vos propres Executor tâches pour un comportement personnalisé.

<em>Warning :</em> Autoriser plusieurs tâches à s’exécuter en parallèle à partir d’un pool de threads n’est généralement <>pas< em/em> ce que l’on veut, car l’ordre de leur opération n’est pas défini. Par exemple, si ces tâches sont utilisées pour modifier un état en commun (par exemple, écrire un fichier en raison d’un clic sur un bouton), il n’existe aucune garantie sur l’ordre des modifications. Sans travail prudent, il est possible dans de rares cas que la version plus récente des données soit sur-écrite par un ancien, ce qui entraîne des problèmes de perte de données et de stabilité obscurs. Ces modifications sont mieux exécutées en série ; pour garantir que ce travail est sérialisé, quelle que soit la version de la plateforme avec #SERIAL_EXECUTORlaquelle vous pouvez utiliser cette fonction.

Cette méthode doit être appelée sur le thread d’interface utilisateur.

Java documentation pour android.os.AsyncTask.executeOnExecutor(java.util.concurrent.Executor, Params...).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à