Share via


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 취소될 때까지 주기적으로 실행되는 작업을 만들고 실행합니다.

ExecutorServicesubmit 메서드를 사용하여 Executor#execute(Runnable) 제출된 명령은 요청된 지연이 0으로 예약됩니다. 0 및 음의 지연(마침표 제외)도 메서드에서 schedule 허용되며 즉시 실행 요청으로 처리됩니다.

모든 schedule 메서드는 절대 시간이나 날짜가 아닌 em 상대</em> 지연 및 마침을 인수로 허용<>합니다. 로 표현된 절대 시간을 필요한 형식으로 java.util.Date 변환하는 것은 간단한 문제입니다. 예를 들어, 나중에 일정을 date예약하려면 를 사용할 schedule(task, date.getTime() - System.currentTimeMillis(), TimeUnit.MILLISECONDS)수 있습니다. 그러나 상대 지연의 만료는 네트워크 시간 동기화 프로토콜, 클록 드리프트 또는 기타 요인으로 인해 작업이 활성화된 현재 Date 와 일치하지 않아도 됩니다.

클래스는 이 Executors 패키지에 제공된 ScheduledExecutorService 구현에 편리한 팩터리 메서드를 제공합니다.

<h2>사용 예제</h2>

다음은 ScheduledExecutorService를 1시간 동안 10초마다 경고음으로 설정하는 메서드가 있는 클래스입니다.

{@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.

이 페이지의 일부는 만들고 공유하며 에 설명된 용어에 따라 사용되는 작업을 기반으로 수정됩니다.

속성

Handle

기본 Android 개체의 JNI 값을 가져옵니다.

(다음에서 상속됨 IJavaObject)
IsShutdown

이 실행기가 종료된 경우 를 반환 true 합니다.

(다음에서 상속됨 IExecutorService)
IsTerminated

종료 후 모든 작업이 완료된 경우 를 반환 true 합니다.

(다음에서 상속됨 IExecutorService)
JniIdentityHashCode

java.lang.System.identityHashCode() 래핑된 instance 값을 반환합니다.

(다음에서 상속됨 IJavaPeerable)
JniManagedPeerState

관리되는 피어의 상태입니다.

(다음에서 상속됨 IJavaPeerable)
JniPeerMembers

멤버 액세스 및 호출 지원.

(다음에서 상속됨 IJavaPeerable)
PeerReference

JniObjectReference 래핑된 Java 개체 instance 의 를 반환합니다.

(다음에서 상속됨 IJavaPeerable)

메서드

AwaitTermination(Int64, TimeUnit)

종료 요청 후 모든 태스크가 실행을 완료하거나 시간 제한이 발생하거나 현재 스레드가 중단될 때까지 차단합니다( 먼저 발생).

(다음에서 상속됨 IExecutorService)
Disposed()

instance 삭제되었을 때 호출됩니다.

(다음에서 상속됨 IJavaPeerable)
DisposeUnlessReferenced()

이 instance 대한 미해결 참조가 없으면 를 호출Dispose()합니다. 그렇지 않으면 아무 것도 수행하지 않습니다.

(다음에서 상속됨 IJavaPeerable)
Execute(IRunnable)

나중에 지정된 명령을 실행합니다.

(다음에서 상속됨 IExecutor)
Finalized()

instance 완료되면 호출됩니다.

(다음에서 상속됨 IJavaPeerable)
InvokeAll(ICollection)

지정된 작업을 실행하여 모든 작업이 완료되면 해당 상태 보유하는 선물 목록과 결과를 반환합니다.

(다음에서 상속됨 IExecutorService)
InvokeAll(ICollection, Int64, TimeUnit)

지정된 작업을 실행하여 모든 작업이 완료되거나 시간 제한이 만료될 때 먼저 발생하는 상태 보유하는 선물 목록을 반환합니다.

(다음에서 상속됨 IExecutorService)
InvokeAny(ICollection)

지정된 태스크를 실행하여 성공적으로 완료된 작업의 결과를 반환합니다(i.

(다음에서 상속됨 IExecutorService)
InvokeAny(ICollection, Int64, TimeUnit)

지정된 태스크를 실행하여 성공적으로 완료된 작업의 결과를 반환합니다(i.

(다음에서 상속됨 IExecutorService)
Schedule(ICallable, Int64, TimeUnit)

지정된 지연 후에 사용하도록 설정되는 값 반환 원샷 작업을 제출합니다.

Schedule(IRunnable, Int64, TimeUnit)

지정된 지연 후에 사용하도록 설정되는 일회성 작업을 제출합니다.

ScheduleAtFixedRate(IRunnable, Int64, Int64, TimeUnit)

지정된 초기 지연 후 먼저 활성화되고 이후 지정된 기간과 함께 활성화되는 주기적 작업을 제출합니다. 즉, 실행은 , , , initialDelay + periodinitialDelay + 2 * period등 이후에 initialDelay시작됩니다.

ScheduleWithFixedDelay(IRunnable, Int64, Int64, TimeUnit)

지정된 초기 지연 후 먼저 사용하도록 설정되고, 이후 한 실행의 종료와 다음 실행 시작 사이에 지정된 지연이 있는 주기적 작업을 제출합니다.

SetJniIdentityHashCode(Int32)

에서 반환 JniIdentityHashCode된 값을 설정합니다.

(다음에서 상속됨 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

ExecutorService 지정된 지연 후에 실행되거나 주기적으로 실행되도록 명령을 예약할 수 있는 입니다.

(다음에서 상속됨 IJavaPeerable)
SetPeerReference(JniObjectReference)

에서 반환 PeerReference된 값을 설정합니다.

(다음에서 상속됨 IJavaPeerable)
Shutdown()

이전에 제출한 태스크가 실행되는 순서대로 종료를 시작하지만 새 작업은 허용되지 않습니다.

(다음에서 상속됨 IExecutorService)
ShutdownNow()

현재 실행 중인 모든 작업을 중지하고, 대기 중인 태스크 처리를 중지하고, 실행을 기다리고 있던 작업 목록을 반환하려고 시도합니다.

(다음에서 상속됨 IExecutorService)
Submit(ICallable)

실행을 위해 값 반환 작업을 제출하고 작업의 보류 중인 결과를 나타내는 Future를 반환합니다.

(다음에서 상속됨 IExecutorService)
Submit(IRunnable)

실행을 위해 실행 가능한 태스크를 제출하고 해당 작업을 나타내는 Future를 반환합니다.

(다음에서 상속됨 IExecutorService)
Submit(IRunnable, Object)

실행을 위해 실행 가능한 태스크를 제출하고 해당 작업을 나타내는 Future를 반환합니다.

(다음에서 상속됨 IExecutorService)
UnregisterFromRuntime()

런타임이 이후 Java.Interop.JniRuntime+JniValueManager.PeekValue 호출에서 반환되지 않도록 이 instance 등록을 취소합니다.

(다음에서 상속됨 IJavaPeerable)

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

ExecutorService 지정된 지연 후에 실행되거나 주기적으로 실행되도록 명령을 예약할 수 있는 입니다.

GetJniTypeName(IJavaPeerable)

ExecutorService 지정된 지연 후에 실행되거나 주기적으로 실행되도록 명령을 예약할 수 있는 입니다.

AwaitTerminationAsync(IExecutorService, Int64, TimeUnit)

ExecutorService 지정된 지연 후에 실행되거나 주기적으로 실행되도록 명령을 예약할 수 있는 입니다.

InvokeAnyAsync(IExecutorService, ICollection)

ExecutorService 지정된 지연 후에 실행되거나 주기적으로 실행되도록 명령을 예약할 수 있는 입니다.

InvokeAnyAsync(IExecutorService, ICollection, Int64, TimeUnit)

ExecutorService 지정된 지연 후에 실행되거나 주기적으로 실행되도록 명령을 예약할 수 있는 입니다.

적용 대상