Язык

IScheduledExecutorService Интерфейс

Определение

Может ExecutorService запланировать выполнение команд после заданной задержки или периодически выполняться.

[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
Производный
Атрибуты
Реализации

Комментарии

Может ExecutorService запланировать выполнение команд после заданной задержки или периодически выполняться.

Методы schedule создают задачи с различными задержками и возвращают объект задачи, который можно использовать для отмены или проверки выполнения. scheduleWithFixedDelay Методы scheduleAtFixedRate создают и выполняют задачи, которые периодически выполняются до отмены.

Команды, отправленные с помощью Executor#execute(Runnable) методов, ExecutorServicesubmit планируются с запрошенной задержкой в нуле. Ноль и отрицательные задержки (но не периоды) также допускаются в schedule методах и рассматриваются как запросы на немедленное выполнение.

Все schedule методы принимают>< задержки и периоды em в<> качестве аргументов, а не абсолютные времена или даты. Это простой вопрос для преобразования абсолютного времени, представленного в качестве java.util.Date требуемой формы. Например, для планирования в определенном будущем dateможно использовать: schedule(task, date.getTime() - System.currentTimeMillis(), TimeUnit.MILLISECONDS) Однако будьте осторожны, что срок действия относительной задержки не должен совпадать с текущим Date , в котором задача включена из-за протоколов синхронизации сетевого времени, смещения часов или других факторов.

Класс Executors предоставляет удобные методы фабрики для реализаций ScheduledExecutorService, предоставляемых в этом пакете.

<Пример< использования h2>/h2>

Ниже приведен класс с методом, который настраивает ScheduledExecutorService каждые десять секунд в течение часа:

{@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);
              }
            }}

Добавлено в версии 1.5.

Java документации по java.util.concurrent.ScheduledExecutorService.

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

Свойства

Имя. Описание
Handle

Возвращает значение JNI базового объекта Android.

(Унаследовано от IJavaObject)
IsShutdown

Возвращает, true если этот исполнитель был завершен.

(Унаследовано от IExecutorService)
IsTerminated

Возвращает, true если все задачи завершились после завершения работы.

(Унаследовано от IExecutorService)
JniIdentityHashCode

Возвращает значение java.lang.System.identityHashCode() для упаковаемого экземпляра.

(Унаследовано от IJavaPeerable)
JniManagedPeerState

Состояние управляемого однорангового узла.

(Унаследовано от IJavaPeerable)
JniObjectReferenceControlBlock

Может ExecutorService запланировать выполнение команд после заданной задержки или периодически выполняться.

(Унаследовано от IJavaPeerable)
JniPeerMembers

Поддержка доступа к членам и вызовов.

(Унаследовано от IJavaPeerable)
PeerReference

JniObjectReference Возвращает экземпляр объекта в оболочке Java.

(Унаследовано от IJavaPeerable)

Методы

Имя. Описание
AwaitTermination(Int64, TimeUnit)

Блоки, пока все задачи не завершились после запроса завершения работы, или время ожидания, или текущий поток прерван, в зависимости от того, что происходит сначала.

(Унаследовано от IExecutorService)
Close()

Инициирует упорядоченное завершение работы, в котором выполняются ранее отправленные задачи, но новые задачи не будут приняты.

(Унаследовано от IExecutorService)
Disposed()

Вызывается при удалении экземпляра.

(Унаследовано от IJavaPeerable)
DisposeUnlessReferenced()

Если нет невыполненных ссылок на этот экземпляр, то вызывается Dispose(); в противном случае ничего не делает.

(Унаследовано от IJavaPeerable)
Execute(IRunnable)

Выполняет указанную команду в некоторое время в будущем.

(Унаследовано от IExecutor)
Finalized()

Вызывается при завершении экземпляра.

(Унаследовано от IJavaPeerable)
InvokeAll(ICollection, Int64, TimeUnit)

Выполняет заданные задачи, возвращая список фьючерсов, содержащих их состояние и результаты, когда все завершено или истекает время ожидания, в зависимости от того, что происходит в первую очередь.

(Унаследовано от IExecutorService)
InvokeAll(ICollection)

Выполняет заданные задачи, возвращая список фьючерсов, содержащих их состояние и результаты при завершении.

(Унаследовано от IExecutorService)
InvokeAny(ICollection, Int64, TimeUnit)

Выполняет заданные задачи, возвращая результат успешно завершенного (i).

(Унаследовано от IExecutorService)
InvokeAny(ICollection)

Выполняет заданные задачи, возвращая результат успешно завершенного (i).

(Унаследовано от IExecutorService)
Schedule(ICallable, Int64, TimeUnit)

Отправляет задачу с возвратом значения, которая становится включенной после заданной задержки.

Schedule(IRunnable, Int64, TimeUnit)

Отправляет задачу с одним снимком, которая становится включенной после указанной задержки.

ScheduleAtFixedRate(IRunnable, Int64, Int64, TimeUnit)

Отправляет периодическое действие, которое сначала включается после заданной начальной задержки, а затем с заданным периодом; то есть, казни начнутся после initialDelay, а затем initialDelay + period, а затем initialDelay + 2 * periodи т. д.

ScheduleWithFixedDelay(IRunnable, Int64, Int64, TimeUnit)

Отправляет периодическое действие, которое включается сначала после заданной начальной задержки, а затем с заданной задержкой между завершением одного выполнения и началом следующего.

SetJniIdentityHashCode(Int32)

Задайте значение, возвращаемое JniIdentityHashCode.

(Унаследовано от IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Может ExecutorService запланировать выполнение команд после заданной задержки или периодически выполняться.

(Унаследовано от IJavaPeerable)
SetPeerReference(JniObjectReference)

Задайте значение, возвращаемое PeerReference.

(Унаследовано от IJavaPeerable)
Shutdown()

Инициирует упорядоченное завершение работы, в котором выполняются ранее отправленные задачи, но новые задачи не будут приняты.

(Унаследовано от IExecutorService)
ShutdownNow()

Пытается остановить все активно выполняемые задачи, останавливает обработку задач ожидания и возвращает список задач, ожидающих выполнения.

(Унаследовано от IExecutorService)
Submit(ICallable)

Отправляет задачу возврата значений для выполнения и возвращает будущее, представляющее ожидающие результаты задачи.

(Унаследовано от IExecutorService)
Submit(IRunnable, Object)

Отправляет задачу Runnable для выполнения и возвращает будущее, представляющее задачу.

(Унаследовано от IExecutorService)
Submit(IRunnable)

Отправляет задачу Runnable для выполнения и возвращает будущее, представляющее задачу.

(Унаследовано от IExecutorService)
UnregisterFromRuntime()

Отмените регистрацию этого экземпляра, чтобы среда выполнения не возвращала ее из будущих Java.Interop.JniRuntime+JniValueManager.PeekValue вызовов.

(Унаследовано от IJavaPeerable)

Методы расширения

Имя. Описание
AwaitTerminationAsync(IExecutorService, Int64, TimeUnit)

Может ExecutorService запланировать выполнение команд после заданной задержки или периодически выполняться.

GetJniTypeName(IJavaPeerable)

Возвращает имя JNI типа экземпляра self.

InvokeAnyAsync(IExecutorService, ICollection, Int64, TimeUnit)

Может ExecutorService запланировать выполнение команд после заданной задержки или периодически выполняться.

InvokeAnyAsync(IExecutorService, ICollection)

Может ExecutorService запланировать выполнение команд после заданной задержки или периодически выполняться.

JavaAs<TResult>(IJavaPeerable)

Попробуйте принуждать к типуself, проверяяTResult, является ли приведение допустимым на стороне Java.

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Может ExecutorService запланировать выполнение команд после заданной задержки или периодически выполняться.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Попробуйте принуждать к типуself, проверяяTResult, является ли приведение допустимым на стороне Java.

Применяется к