다음을 통해 공유


ScheduledThreadPoolExecutor 클래스

정의

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

[Android.Runtime.Register("java/util/concurrent/ScheduledThreadPoolExecutor", DoNotGenerateAcw=true)]
public class ScheduledThreadPoolExecutor : Java.Util.Concurrent.ThreadPoolExecutor, IDisposable, Java.Interop.IJavaPeerable, Java.Util.Concurrent.IScheduledExecutorService
[<Android.Runtime.Register("java/util/concurrent/ScheduledThreadPoolExecutor", DoNotGenerateAcw=true)>]
type ScheduledThreadPoolExecutor = class
    inherit ThreadPoolExecutor
    interface IScheduledExecutorService
    interface IExecutorService
    interface IExecutor
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
상속
특성
구현

설명

ThreadPoolExecutor 지정된 지연 후에 실행되거나 주기적으로 실행되도록 명령을 추가로 예약할 수 있는 A입니다. 이 클래스는 여러 작업자 스레드가 필요한 경우 또는 (이 클래스가 확장되는) 추가 유연성 또는 기능이 ThreadPoolExecutor 필요한 경우보다 좋습니다java.util.Timer.

지연된 작업은 활성화된 시점보다 더 빨리 실행되지만, 활성화된 후 언제 시작되는지에 대한 실시간 보장이 없습니다. 정확히 동일한 실행 시간에 예약된 작업은 FIFO(선입선출) 제출 순서로 사용하도록 설정됩니다.

제출된 작업이 실행되기 전에 취소되면 실행이 억제됩니다. 기본적으로 이러한 취소된 작업은 지연이 경과할 때까지 작업 큐에서 자동으로 제거되지 않습니다. 이렇게 하면 추가 검사 및 모니터링이 가능하지만 취소된 작업의 무제한 보존이 발생할 수도 있습니다.

겹치거나 #scheduleWithFixedDelay scheduleWithFixedDelay 겹치지 않고 예약된 #scheduleAtFixedRate scheduleAtFixedRate 주기적 작업의 연속 실행입니다. 다른 스레드에서 다른 실행을 수행할 수 있지만 이전 실행의 효과는 후속 실행 <><> 의 이전 실행과 같습니다.

이 클래스는 상속되지만 ThreadPoolExecutor상속된 튜닝 메서드 중 일부는 유용하지 않습니다. 특히 스레드 및 바인딩되지 않은 큐를 사용하는 corePoolSize 고정 크기 풀로 작동하므로 maximumPoolSize 조정이 유용하지 않습니다. 또한 실행할 수 있게 되면 작업을 처리할 스레드가 없는 풀을 떠날 수 있으므로 0으로 설정 corePoolSize 하거나 사용하는 allowCoreThreadTimeOut 것이 좋습니다.

달리 지정되지 않은 경우와 ThreadPoolExecutor마찬가지로 이 클래스는 기본 스레드 팩터리로 사용되며 ThreadPoolExecutor.AbortPolicy 거부된 기본 실행 처리기로 사용됩니다Executors#defaultThreadFactory.

<b>Extension notes:</b> 이 클래스는 ThreadPoolExecutor#execute(Runnable) execute 작업별 지연 및 AbstractExecutorService#submit(Runnable) submit 예약을 제어하기 위해 내부 ScheduledFuture 개체를 생성하는 메서드 및 메서드를 재정의합니다. 기능을 유지하려면 서브클래스에서 이러한 메서드를 추가로 재정의하면 슈퍼클래스 버전을 호출해야 하며 이는 추가 작업 사용자 지정을 효과적으로 사용하지 않도록 설정합니다. 그러나 이 클래스는 , , 및 를 통해 submitscheduleexecutescheduleAtFixedRate입력한 명령을 실행하는 데 사용되는 구체적인 작업 유형을 사용자 지정하는 데 사용할 수 있는 대체 보호 확장 메서드 decorateTask (각각 Runnable 하나의 버전 및 scheduleWithFixedDelay)를 제공합니다.Callable 기본적으로 확장 ScheduledThreadPoolExecutor 되는 FutureTask작업 유형을 사용합니다. 그러나 폼의 서브클래스를 사용하여 수정하거나 바꿀 수 있습니다.

{@code
            public class CustomScheduledExecutor extends ScheduledThreadPoolExecutor {

              static class CustomTask<V> implements RunnableScheduledFuture<V> { ... }

              protected <V> RunnableScheduledFuture<V> decorateTask(
                           Runnable r, RunnableScheduledFuture<V> task) {
                  return new CustomTask<V>(r, task);
              }

              protected <V> RunnableScheduledFuture<V> decorateTask(
                           Callable<V> c, RunnableScheduledFuture<V> task) {
                  return new CustomTask<V>(c, task);
              }
              // ... add constructors, etc.
            }}

1.5에 추가되었습니다.

에 대한 java.util.concurrent.ScheduledThreadPoolExecutorJava 설명서

이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

생성자

ScheduledThreadPoolExecutor(Int32)

지정된 코어 풀 크기를 사용하여 새 ScheduledThreadPoolExecutor 풀을 만듭니다.

ScheduledThreadPoolExecutor(Int32, IRejectedExecutionHandler)

지정된 초기 매개 변수를 사용하여 새 ScheduledThreadPoolExecutor 매개 변수를 만듭니다.

ScheduledThreadPoolExecutor(Int32, IThreadFactory)

지정된 초기 매개 변수를 사용하여 새 ScheduledThreadPoolExecutor 매개 변수를 만듭니다.

ScheduledThreadPoolExecutor(Int32, IThreadFactory, IRejectedExecutionHandler)

지정된 초기 매개 변수를 사용하여 새 ScheduledThreadPoolExecutor 매개 변수를 만듭니다.

ScheduledThreadPoolExecutor(IntPtr, JniHandleOwnership)

JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

속성

ActiveCount

작업을 적극적으로 실행하는 대략적인 스레드 수를 반환합니다.

(다음에서 상속됨 ThreadPoolExecutor)
Class

Object런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
CompletedTaskCount

실행을 완료한 대략적인 총 작업 수를 반환합니다.

(다음에서 상속됨 ThreadPoolExecutor)
ContinueExistingPeriodicTasksAfterShutdownPolicy

이 실행기가 shutdown있는 경우에도 기존 정기 작업을 계속 실행할지 여부에 대한 정책을 가져옵니다. -또는- 이 실행기가 shutdown있는 경우에도 기존 정기 작업을 계속 실행할지 여부에 대한 정책을 설정합니다.

CorePoolSize

코어 스레드 수를 반환합니다. -또는- 코어 스레드 수를 설정합니다.

(다음에서 상속됨 ThreadPoolExecutor)
ExecuteExistingDelayedTasksAfterShutdownPolicy

이 실행기가 shutdown있는 경우에도 지연된 기존 작업을 실행할지 여부에 대한 정책을 가져옵니다. -또는- 이 실행기가 shutdown있는 경우에도 지연된 기존 작업을 실행할지 여부에 대한 정책을 설정합니다.

Handle

기본 Android 인스턴스에 대한 핸들입니다.

(다음에서 상속됨 Object)
IsShutdown

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

(다음에서 상속됨 ThreadPoolExecutor)
IsTerminated

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

(다음에서 상속됨 ThreadPoolExecutor)
IsTerminating

이 실행기가 종료 중이거나 #shutdownNow 완전히 종료되지 않은 경우 true를 #shutdown 반환합니다.

(다음에서 상속됨 ThreadPoolExecutor)
JniIdentityHashCode

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

(다음에서 상속됨 Object)
JniPeerMembers

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

LargestPoolSize

풀에 동시에 있었던 가장 많은 수의 스레드를 반환합니다.

(다음에서 상속됨 ThreadPoolExecutor)
MaximumPoolSize

허용되는 최대 스레드 수를 반환합니다. -또는- 허용되는 최대 스레드 수를 설정합니다.

(다음에서 상속됨 ThreadPoolExecutor)
PeerReference

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

(다음에서 상속됨 Object)
PoolSize

풀의 현재 스레드 수를 반환합니다.

(다음에서 상속됨 ThreadPoolExecutor)
Queue

이 실행기에서 사용하는 작업 큐를 반환합니다.

(다음에서 상속됨 ThreadPoolExecutor)
RejectedExecutionHandler

검색할 수 없는 작업에 대한 현재 처리기를 반환합니다. -또는- 검색할 수 없는 작업에 대한 새 처리기를 설정합니다.

(다음에서 상속됨 ThreadPoolExecutor)
RemoveOnCancelPolicy

취소 시 취소된 작업을 작업 큐에서 즉시 제거할지 여부에 대한 정책을 가져옵니다. -또는- 취소 시 취소된 작업을 작업 큐에서 즉시 제거할지 여부에 대한 정책을 설정합니다.

TaskCount

실행이 예약된 대략적인 총 작업 수를 반환합니다.

(다음에서 상속됨 ThreadPoolExecutor)
ThreadFactory

새 스레드를 만드는 데 사용되는 스레드 팩터리를 반환합니다. -또는- 새 스레드를 만드는 데 사용되는 스레드 팩터리를 설정합니다.

(다음에서 상속됨 ThreadPoolExecutor)
ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

메서드

AfterExecute(IRunnable, Throwable)

지정된 Runnable의 실행이 완료될 때 호출되는 메서드입니다.

(다음에서 상속됨 ThreadPoolExecutor)
AllowCoreThreadTimeOut(Boolean)

새 태스크가 도착할 때 필요한 경우 대체되는 유지 시간 내에 작업이 도착하지 않을 경우 코어 스레드가 시간 초과되고 종료될 수 있는지 여부를 제어하는 정책을 설정합니다.

(다음에서 상속됨 ThreadPoolExecutor)
AllowsCoreThreadTimeOut()

이 풀에서 코어 스레드가 시간 초과를 허용하고 keepAlive 시간 내에 작업이 도착하지 않으면 종료할 수 있는 경우 true를 반환하며, 새 태스크가 도착할 때 필요한 경우 대체됩니다.

(다음에서 상속됨 ThreadPoolExecutor)
AwaitTermination(Int64, TimeUnit)

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

(다음에서 상속됨 ThreadPoolExecutor)
AwaitTerminationAsync(Int64, TimeUnit)

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

(다음에서 상속됨 AbstractExecutorService)
BeforeExecute(Thread, IRunnable)

지정된 스레드에서 지정된 Runnable을 실행하기 전에 호출된 메서드입니다.

(다음에서 상속됨 ThreadPoolExecutor)
Clone()

이 개체의 복사본을 만들고 반환합니다.

(다음에서 상속됨 Object)
DecorateTask(ICallable, IRunnableScheduledFuture)

호출 가능을 실행하는 데 사용되는 작업을 수정하거나 바꿉니다.

DecorateTask(IRunnable, IRunnableScheduledFuture)

runnable을 실행하는 데 사용되는 작업을 수정하거나 바꿉니다.

Dispose()

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

(다음에서 상속됨 Object)
Dispose(Boolean)

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

(다음에서 상속됨 Object)
Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

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

나중에 지정된 작업을 실행합니다.

(다음에서 상속됨 ThreadPoolExecutor)
GetHashCode()

개체에 대한 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
GetKeepAliveTime(TimeUnit)

스레드가 종료되기 전에 유휴 상태로 유지될 수 있는 시간인 스레드 연결 유지 시간을 반환합니다.

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

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

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

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

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

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

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

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

(다음에서 상속됨 AbstractExecutorService)
JavaFinalize()

가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다.

(다음에서 상속됨 Object)
NewTaskFor(ICallable)

RunnableFuture 지정된 호출 가능한 작업에 대한 값을 반환합니다.

(다음에서 상속됨 AbstractExecutorService)
NewTaskFor(IRunnable, Object)

RunnableFuture 지정된 실행 가능 및 기본값에 대한 값을 반환합니다.

(다음에서 상속됨 AbstractExecutorService)
Notify()

이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다.

(다음에서 상속됨 Object)
NotifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다.

(다음에서 상속됨 Object)
PrestartAllCoreThreads()

모든 핵심 스레드를 시작하여 작업을 유휴 상태로 기다립니다.

(다음에서 상속됨 ThreadPoolExecutor)
PrestartCoreThread()

코어 스레드를 시작하여 작업을 유휴 상태로 기다립니다.

(다음에서 상속됨 ThreadPoolExecutor)
Purge()

취소된 모든 Future 작업을 작업 큐에서 제거하려고 시도합니다.

(다음에서 상속됨 ThreadPoolExecutor)
Remove(IRunnable)

실행기가 있는 경우 실행기 내부 큐에서 이 작업을 제거하므로 아직 시작되지 않은 경우 실행되지 않습니다.

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

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

Schedule(IRunnable, Int64, TimeUnit)

지정된 지연 후에 활성화되는 원샷 작업을 만들고 실행합니다.

ScheduleAtFixedRate(IRunnable, Int64, Int64, TimeUnit)

지정된 초기 지연 후에 먼저 사용하도록 설정되고 그 후에 지정된 기간으로 활성화되는 주기적 작업을 제출합니다. 즉, 실행이 시작initialDelay되고, 그 다음에, 그런 다음initialDelay + periodinitialDelay + 2 * period, 실행이 시작됩니다.

ScheduleWithFixedDelay(IRunnable, Int64, Int64, TimeUnit)

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

SetHandle(IntPtr, JniHandleOwnership)

Handle 속성을 설정합니다.

(다음에서 상속됨 Object)
SetKeepAliveTime(Int64, TimeUnit)

스레드가 종료되기 전에 유휴 상태로 유지될 수 있는 시간인 스레드 연결 유지 시간을 설정합니다.

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

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

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

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

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

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

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

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

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

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

(다음에서 상속됨 AbstractExecutorService)
Terminated()

실행기가 종료될 때 호출되는 메서드입니다.

(다음에서 상속됨 ThreadPoolExecutor)
ToArray<T>()

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

(다음에서 상속됨 Object)
ToString()

개체의 문자열 표현을 반환합니다.

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

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

(다음에서 상속됨 Object)
Wait()

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 <><중단/종료>합니다.>

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

IJavaPeerable.Disposed()

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

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

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

(다음에서 상속됨 Object)
IJavaPeerable.Finalized()

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

(다음에서 상속됨 Object)
IJavaPeerable.JniManagedPeerState

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

(다음에서 상속됨 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

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

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

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

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

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

(다음에서 상속됨 Object)

확장 메서드

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

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

GetJniTypeName(IJavaPeerable)

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

AwaitTerminationAsync(IExecutorService, Int64, TimeUnit)

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

InvokeAnyAsync(IExecutorService, ICollection)

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

InvokeAnyAsync(IExecutorService, ICollection, Int64, TimeUnit)

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

적용 대상