IScheduledExecutorService 인터페이스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
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
취소될 때까지 주기적으로 실행되는 작업을 만들고 실행합니다.
및 ExecutorService
submit
메서드를 사용하여 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 |
이 실행기가 종료된 경우 를 반환 |
IsTerminated |
종료 후 모든 작업이 완료된 경우 를 반환 |
JniIdentityHashCode |
|
JniManagedPeerState |
관리되는 피어의 상태입니다. (다음에서 상속됨 IJavaPeerable) |
JniPeerMembers |
멤버 액세스 및 호출 지원. (다음에서 상속됨 IJavaPeerable) |
PeerReference |
JniObjectReference 래핑된 Java 개체 instance 의 를 반환합니다. (다음에서 상속됨 IJavaPeerable) |
메서드
AwaitTermination(Int64, TimeUnit) |
종료 요청 후 모든 태스크가 실행을 완료하거나 시간 제한이 발생하거나 현재 스레드가 중단될 때까지 차단합니다( 먼저 발생). (다음에서 상속됨 IExecutorService) |
Disposed() |
instance 삭제되었을 때 호출됩니다. (다음에서 상속됨 IJavaPeerable) |
DisposeUnlessReferenced() |
이 instance 대한 미해결 참조가 없으면 를 호출 |
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) |
지정된 초기 지연 후 먼저 활성화되고 이후 지정된 기간과 함께 활성화되는 주기적 작업을 제출합니다. 즉, 실행은 , , , |
ScheduleWithFixedDelay(IRunnable, Int64, Int64, TimeUnit) |
지정된 초기 지연 후 먼저 사용하도록 설정되고, 이후 한 실행의 종료와 다음 실행 시작 사이에 지정된 지연이 있는 주기적 작업을 제출합니다. |
SetJniIdentityHashCode(Int32) |
에서 반환 |
SetJniManagedPeerState(JniManagedPeerStates) |
|
SetPeerReference(JniObjectReference) |
에서 반환 |
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) |
|
GetJniTypeName(IJavaPeerable) |
|
AwaitTerminationAsync(IExecutorService, Int64, TimeUnit) |
|
InvokeAnyAsync(IExecutorService, ICollection) |
|
InvokeAnyAsync(IExecutorService, ICollection, Int64, TimeUnit) |
|