Share via


ICompletionService 인터페이스

정의

새 비동기 작업의 프로덕션을 완료된 태스크의 결과 사용량과 분리하는 서비스입니다.

[Android.Runtime.Register("java/util/concurrent/CompletionService", "", "Java.Util.Concurrent.ICompletionServiceInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "V" })]
public interface ICompletionService : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/util/concurrent/CompletionService", "", "Java.Util.Concurrent.ICompletionServiceInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "V" })>]
type ICompletionService = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
파생
특성
구현

설명

새 비동기 작업의 프로덕션을 완료된 태스크의 결과 사용량과 분리하는 서비스입니다. submit 실행을 위한 생산자 작업입니다. 소비자는 take 작업을 완료하고 완료 순서대로 결과를 처리했습니다. 예를 들어 은 CompletionService 비동기 I/O를 관리하는 데 사용할 수 있습니다. 이 경우 읽기를 수행하는 작업은 프로그램 또는 시스템의 한 부분에서 제출된 다음 읽기가 완료될 때 프로그램의 다른 부분에서 작동합니다( 요청된 것과 다른 순서로).

일반적으로 는 CompletionService 별도의 Executor 를 사용하여 실제로 작업을 실행합니다. 이 경우 CompletionService 는 내부 완료 큐만 관리합니다. 클래스는 ExecutorCompletionService 이 방법의 구현을 제공합니다.

메모리 일관성 효과: 해당 태스크에서 수행한 i happen-before</i>> 작업에 작업을 CompletionService<제출하기 전에 스레드의 작업이며, 이는 해당 에서 성공적으로 반환된 다음 작업이 발생하기 전에 발생합니다take().

1.5에 추가되었습니다.

에 대한 Java 설명서입니다 java.util.concurrent.CompletionService.

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

속성

Handle

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

(다음에서 상속됨 IJavaObject)
JniIdentityHashCode

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

(다음에서 상속됨 IJavaPeerable)
JniManagedPeerState

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

(다음에서 상속됨 IJavaPeerable)
JniPeerMembers

멤버 액세스 및 호출 지원.

(다음에서 상속됨 IJavaPeerable)
PeerReference

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

(다음에서 상속됨 IJavaPeerable)

메서드

Disposed()

instance 삭제될 때 호출됩니다.

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

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

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

instance 완료될 때 호출됩니다.

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

완료된 다음 작업을 나타내는 Future를 검색하고 제거하거나 없는 경우 을 검색하여 null 제거합니다.

Poll(Int64, TimeUnit)

다음 완료된 작업을 나타내는 Future를 검색하고 제거합니다. 아직 없는 경우 지정된 대기 시간까지 필요한 경우 대기합니다.

SetJniIdentityHashCode(Int32)

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

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

새 비동기 작업의 프로덕션을 완료된 태스크의 결과 사용량과 분리하는 서비스입니다.

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

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

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

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

Submit(IRunnable, Object)

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

Take()

완료된 다음 작업을 나타내는 Future를 검색하고 제거합니다. 아직 없는 경우 대기합니다.

UnregisterFromRuntime()

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

(다음에서 상속됨 IJavaPeerable)

확장 메서드

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

새 비동기 작업의 프로덕션을 완료된 태스크의 결과 사용량과 분리하는 서비스입니다.

GetJniTypeName(IJavaPeerable)

새 비동기 작업의 프로덕션을 완료된 태스크의 결과 사용량과 분리하는 서비스입니다.

적용 대상