TracePropagatingExecutorService

public final class TracePropagatingExecutorService
extends Object implements ExecutorService

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


Es un servicio de ejecución que reenvía tareas a una implementación subyacente mientras propaga el contexto de seguimiento.

Esto permite usar funciones de seguimiento, como CloseableTraceScope, en las tareas enviadas.

Resumen

Métodos públicos

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

Crea un ExecutorService que delega en el ejecutor delegado determinado.

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étodos protegidos

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

Métodos públicos

awaitTermination

public boolean awaitTermination (long timeout, 
                TimeUnit unit)

Parámetros
timeout long

unit TimeUnit

Muestra
boolean

Arroja
InterruptedException

create

public static TracePropagatingExecutorService create (ExecutorService delegate)

Crea un ExecutorService que delega en el ejecutor delegado determinado.

Ten en cuenta que el registro activo que se propaga a las tareas es el que está activo en las llamadas al método del ejecutor. Esto se debe a que TF construye la mayoría de los objetos antes de iniciar la invocación y adjuntar el registro.

Parámetros
delegate ExecutorService

Muestra
TracePropagatingExecutorService

ejecutar

public void execute (Runnable command)

Parámetros
command Runnable

invokeAll

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

Parámetros
tasks Collection

Muestra
List<Future<T>>

Arroja
InterruptedException

invokeAll

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

Parámetros
tasks Collection

timeout long

unit TimeUnit

Muestra
List<Future<T>>

Arroja
InterruptedException

invokeAny

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

Parámetros
tasks Collection

Muestra
T

Arroja
ExecutionException
InterruptedException

invokeAny

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

Parámetros
tasks Collection

timeout long

unit TimeUnit

Muestra
T

Arroja
ExecutionException
InterruptedException
TimeoutException

isShutdown

public boolean isShutdown ()

Muestra
boolean

isTerminated

public boolean isTerminated ()

Muestra
boolean

shutdown

public void shutdown ()

shutdownNow

public List<Runnable> shutdownNow ()

Muestra
List<Runnable>

enviar

public Future<?> submit (Runnable task)

Parámetros
task Runnable

Muestra
Future<?>

enviar

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

Parámetros
task Callable

Muestra
Future<T>

enviar

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

Parámetros
task Runnable

result T

Muestra
Future<T>

Métodos protegidos

wrapTasks

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

Parámetros
tasks Collection

Devuelve
Collection<? extends Callable<T>>