TracePropagatingExecutorService

public final class TracePropagatingExecutorService
extends Object implements ExecutorService

java.lang.Object
   ↳ com.android.tradefed.invoker.tracing.TracePropagatingExecutorService


Service d'exécution qui transmet les tâches à une implémentation sous-jacente tout en propageant le contexte de traçage.

Cela permet d'utiliser des outils de traçage tels que CloseableTraceScope dans les tâches envoyées.

Résumé

Méthodes publiques

boolean awaitTermination(long timeout, TimeUnit unit)
static TracePropagatingExecutorService create(ExecutorService delegate)

Crée un ExecutorService qui délègue à l'exécuteur de délégué donné.

void execute(Runnable command)
<T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks)
<T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit)
<T> T invokeAny(Collection<? extends Callable<T>> tasks)
<T> T invokeAny(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit)
boolean isShutdown()
boolean isTerminated()
void shutdown()
List<Runnable> shutdownNow()
Future<?> submit(Runnable task)
<T> Future<T> submit(Callable<T> task)
<T> Future<T> submit(Runnable task, T result)

Méthodes protégées

<T> Collection<? extends Callable<T>> wrapTasks(Collection<? extends Callable<T>> tasks)

Méthodes publiques

awaitTermination

public boolean awaitTermination (long timeout, 
                TimeUnit unit)

Paramètres
timeout long

unit TimeUnit

Renvoie
boolean

Génère
InterruptedException

create

public static TracePropagatingExecutorService create (ExecutorService delegate)

Crée un ExecutorService qui délègue à l'exécuteur de délégué donné.

Notez que la trace active propagée aux tâches est celle active lors des appels à la méthode d'exécution. Cela est dû au fait que TF construit la plupart des objets avant de démarrer l'invocation et d'associer la trace.

Paramètres
delegate ExecutorService

Renvoie
TracePropagatingExecutorService

exécuter

public void execute (Runnable command)

Paramètres
command Runnable

invokeAll

public List<Future<T>> invokeAll (Collection<? extends Callable<T>> tasks)

Paramètres
tasks Collection

Renvoie
List<Future<T>>

Génère
InterruptedException

invokeAll

public List<Future<T>> invokeAll (Collection<? extends Callable<T>> tasks, 
                long timeout, 
                TimeUnit unit)

Paramètres
tasks Collection

timeout long

unit TimeUnit

Renvoie
List<Future<T>>

Génère
InterruptedException

invokeAny

public T invokeAny (Collection<? extends Callable<T>> tasks)

Paramètres
tasks Collection

Renvoie
T

Génère
ExecutionException
InterruptedException

invokeAny

public T invokeAny (Collection<? extends Callable<T>> tasks, 
                long timeout, 
                TimeUnit unit)

Paramètres
tasks Collection

timeout long

unit TimeUnit

Renvoie
T

Génère
ExecutionException
InterruptedException
TimeoutException

isShutdown

public boolean isShutdown ()

Renvoie
boolean

isTerminated

public boolean isTerminated ()

Renvoie
boolean

shutdown

public void shutdown ()

shutdownNow

public List<Runnable> shutdownNow ()

Renvoie
List<Runnable>

envoyer

public Future<?> submit (Runnable task)

Paramètres
task Runnable

Renvoie
Future<?>

envoyer

public Future<T> submit (Callable<T> task)

Paramètres
task Callable

Renvoie
Future<T>

envoyer

public Future<T> submit (Runnable task, 
                T result)

Paramètres
task Runnable

result T

Renvoie
Future<T>

Méthodes protégées

wrapTasks

protected Collection<? extends Callable<T>> wrapTasks (Collection<? extends Callable<T>> tasks)

Paramètres
tasks Collection

Renvoie
Collection<? extends Callable<T>>