Lenguaje

IScheduledExecutorService Interfaz

Definición

que ExecutorService puede programar comandos para que se ejecuten después de un retraso determinado o para ejecutarse periódicamente.

[Android.Runtime.Register("java/util/concurrent/ScheduledExecutorService", "", "Java.Util.Concurrent.IScheduledExecutorServiceInvoker")]
public interface IScheduledExecutorService : IDisposable, Java.Interop.IJavaPeerable, Java.Util.Concurrent.IExecutorService
[<Android.Runtime.Register("java/util/concurrent/ScheduledExecutorService", "", "Java.Util.Concurrent.IScheduledExecutorServiceInvoker")>]
type IScheduledExecutorService = interface
    interface IExecutorService
    interface IExecutor
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Derivado
Atributos
Implementaciones

Comentarios

que ExecutorService puede programar comandos para que se ejecuten después de un retraso determinado o para ejecutarse periódicamente.

Los schedule métodos crean tareas con varios retrasos y devuelven un objeto de tarea que se puede usar para cancelar o comprobar la ejecución. Los scheduleAtFixedRate métodos y crean y scheduleWithFixedDelay ejecutan tareas que se ejecutan periódicamente hasta que se cancelan.

Los comandos enviados mediante los Executor#execute(Runnable) métodos y ExecutorServicesubmit se programan con un retraso solicitado de cero. También se permiten retrasos negativos y cero (pero no períodos) en schedule métodos y se tratan como solicitudes de ejecución inmediata.

Todos los schedule métodos aceptan>< retrasos y períodos relativos<> y períodos como argumentos, no tiempos absolutos ni fechas. Es una cuestión sencilla transformar un tiempo absoluto representado como en java.util.Date el formulario requerido. Por ejemplo, para programar en un futuro datedeterminado, puede usar: schedule(task, date.getTime() - System.currentTimeMillis(), TimeUnit.MILLISECONDS). Tenga en cuenta, sin embargo, que la expiración de un retraso relativo no debe coincidir con la actual Date en la que la tarea está habilitada debido a protocolos de sincronización de tiempo de red, desfase de reloj u otros factores.

La Executors clase proporciona métodos de fábrica convenientes para las implementaciones scheduledExecutorService proporcionadas en este paquete.

<Ejemplo< de uso de h2>/h2>

Esta es una clase con un método que configura scheduledExecutorService para que pita cada diez segundos durante una hora:

{@code
            import static java.util.concurrent.TimeUnit.*;
            class BeeperControl {
              private final ScheduledExecutorService scheduler =
                Executors.newScheduledThreadPool(1);

              public void beepForAnHour() {
                Runnable beeper = () -> System.out.println("beep");
                ScheduledFuture<?> beeperHandle =
                  scheduler.scheduleAtFixedRate(beeper, 10, 10, SECONDS);
                Runnable canceller = () -> beeperHandle.cancel(false);
                scheduler.schedule(canceller, 1, HOURS);
              }
            }}

Agregado en 1.5.

Java documentación para java.util.concurrent.ScheduledExecutorService.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Propiedades

Nombre Description
Handle

Obtiene el valor JNI del objeto Android subyacente.

(Heredado de IJavaObject)
IsShutdown

Devuelve true si este ejecutor se ha cerrado.

(Heredado de IExecutorService)
IsTerminated

Devuelve true si todas las tareas se han completado después de apagarse.

(Heredado de IExecutorService)
JniIdentityHashCode

Devuelve el valor de java.lang.System.identityHashCode() para la instancia ajustada.

(Heredado de IJavaPeerable)
JniManagedPeerState

Estado del mismo nivel administrado.

(Heredado de IJavaPeerable)
JniObjectReferenceControlBlock

que ExecutorService puede programar comandos para que se ejecuten después de un retraso determinado o para ejecutarse periódicamente.

(Heredado de IJavaPeerable)
JniPeerMembers

Compatibilidad con la invocación y el acceso de miembros.

(Heredado de IJavaPeerable)
PeerReference

Devuelve un JniObjectReference de la instancia de objeto Java ajustada.

(Heredado de IJavaPeerable)

Métodos

Nombre Description
AwaitTermination(Int64, TimeUnit)

Bloquea hasta que todas las tareas se hayan completado la ejecución después de una solicitud de cierre, o el tiempo de espera se produzca o se interrumpa el subproceso actual, lo que ocurra primero.

(Heredado de IExecutorService)
Close()

Inicia un apagado ordenado en el que se ejecutan las tareas enviadas anteriormente, pero no se aceptarán nuevas tareas.

(Heredado de IExecutorService)
Disposed()

Se llama cuando se ha eliminado la instancia.

(Heredado de IJavaPeerable)
DisposeUnlessReferenced()

Si no hay referencias pendientes a esta instancia, llama a Dispose(); de lo contrario, no hace nada.

(Heredado de IJavaPeerable)
Execute(IRunnable)

Ejecuta el comando especificado en algún momento en el futuro.

(Heredado de IExecutor)
Finalized()

Se llama cuando se ha finalizado la instancia.

(Heredado de IJavaPeerable)
InvokeAll(ICollection, Int64, TimeUnit)

Ejecuta las tareas especificadas, devolviendo una lista de Futuros que contiene su estado y resultados cuando expira todo el tiempo de espera o completo, lo que ocurra primero.

(Heredado de IExecutorService)
InvokeAll(ICollection)

Ejecuta las tareas especificadas y devuelve una lista de Futuros que contienen su estado y resultados cuando se completan todos.

(Heredado de IExecutorService)
InvokeAny(ICollection, Int64, TimeUnit)

Ejecuta las tareas dadas y devuelve el resultado de uno que se ha completado correctamente (i.

(Heredado de IExecutorService)
InvokeAny(ICollection)

Ejecuta las tareas dadas y devuelve el resultado de uno que se ha completado correctamente (i.

(Heredado de IExecutorService)
Schedule(ICallable, Int64, TimeUnit)

Envía una tarea de devolución de valor única que se habilita después del retraso especificado.

Schedule(IRunnable, Int64, TimeUnit)

Envía una tarea de un solo disparo que se habilita después del retraso especificado.

ScheduleAtFixedRate(IRunnable, Int64, Int64, TimeUnit)

Envía una acción periódica que se habilita primero después del retraso inicial especificado y, posteriormente, con el período especificado; es decir, las ejecuciones comenzarán después initialDelayde , luego initialDelay + period, initialDelay + 2 * period, y así sucesivamente.

ScheduleWithFixedDelay(IRunnable, Int64, Int64, TimeUnit)

Envía una acción periódica que se habilita primero después del retraso inicial dado y, posteriormente, con el retraso dado entre la terminación de una ejecución y el inicio del siguiente.

SetJniIdentityHashCode(Int32)

Establezca el valor devuelto por JniIdentityHashCode.

(Heredado de IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

que ExecutorService puede programar comandos para que se ejecuten después de un retraso determinado o para ejecutarse periódicamente.

(Heredado de IJavaPeerable)
SetPeerReference(JniObjectReference)

Establezca el valor devuelto por PeerReference.

(Heredado de IJavaPeerable)
Shutdown()

Inicia un apagado ordenado en el que se ejecutan las tareas enviadas anteriormente, pero no se aceptarán nuevas tareas.

(Heredado de IExecutorService)
ShutdownNow()

Intenta detener todas las tareas que se ejecutan activamente, detiene el procesamiento de tareas en espera y devuelve una lista de las tareas que estaban esperando la ejecución.

(Heredado de IExecutorService)
Submit(ICallable)

Envía una tarea de devolución de valor para su ejecución y devuelve un valor Future que representa los resultados pendientes de la tarea.

(Heredado de IExecutorService)
Submit(IRunnable, Object)

Envía una tarea runnable para su ejecución y devuelve un valor Future que representa esa tarea.

(Heredado de IExecutorService)
Submit(IRunnable)

Envía una tarea runnable para su ejecución y devuelve un valor Future que representa esa tarea.

(Heredado de IExecutorService)
UnregisterFromRuntime()

Anule el registro de esta instancia para que el entorno de ejecución no lo devuelva de invocaciones futuras Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Heredado de IJavaPeerable)

Métodos de extensión

Nombre Description
AwaitTerminationAsync(IExecutorService, Int64, TimeUnit)

que ExecutorService puede programar comandos para que se ejecuten después de un retraso determinado o para ejecutarse periódicamente.

GetJniTypeName(IJavaPeerable)

Obtiene el nombre JNI del tipo de la instancia self.

InvokeAnyAsync(IExecutorService, ICollection, Int64, TimeUnit)

que ExecutorService puede programar comandos para que se ejecuten después de un retraso determinado o para ejecutarse periódicamente.

InvokeAnyAsync(IExecutorService, ICollection)

que ExecutorService puede programar comandos para que se ejecuten después de un retraso determinado o para ejecutarse periódicamente.

JavaAs<TResult>(IJavaPeerable)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

que ExecutorService puede programar comandos para que se ejecuten después de un retraso determinado o para ejecutarse periódicamente.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

Se aplica a