조건우선순위차단큐

public class ConditionPriorityBlockingQueue
extends Object

java.lang.Object
com.android.tradefed.util.ConditionPriorityBlockingQueue<T>


특정 조건과 일치하는 객체를 검색할 수 있는 ERROR(/PriorityBlockingQueue) 같은 작업을 사용하는 스레드로부터 안전한 클래스입니다.

반복은 스레드로부터 안전하지만 일관성이 없습니다. 큐의 복사본은 반복자 생성 시 만들어지며 해당 복사본은 반복 대상으로 사용됩니다. 반복 중에 큐가 수정되면 ERROR(/ConcurrentModificationException) 발생하지 않지만 반복자도 수정된 내용을 반영하지 않습니다.

또한보십시오:

요약

중첩 클래스

class ConditionPriorityBlockingQueue.AlwaysMatch <T>

모든 개체와 일치하는 ConditionPriorityBlockingQueue.IMatcher 입니다.

interface ConditionPriorityBlockingQueue.IMatcher <T>

요소가 일종의 조건과 일치하는지 확인하기 위한 인터페이스입니다.

공개 생성자

ConditionPriorityBlockingQueue ()

ConditionPriorityBlockingQueue 생성합니다.

요소는 FIFO 순서로 우선순위가 지정됩니다.

ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c)

ConditionPriorityBlockingQueue 생성합니다.

공개 메소드

boolean add (T addedElement)

지정된 요소를 이 큐에 삽입합니다.

T addUnique ( IMatcher <T> matcher, T object)

이 대기열에 항목을 추가하여 주어진 조건과 일치하는 기존 객체를 대체합니다.

void clear ()

이 큐에서 모든 요소를 ​​제거합니다.

boolean contains (T object)

개체가 현재 이 대기열에 포함되어 있는지 확인합니다.

getCopy ()

대기열 내용의 복사본을 가져옵니다.

iterator ()

T poll (long timeout, TimeUnit unit)

대기열에서 제공된 ERROR(/Comparator) 요소 T로 판단되는 최소값을 검색하고 제거합니다.

T poll (long timeout, TimeUnit unit, IMatcher <T> matcher)

matcher.matches(T) true 인 큐에서 제공된 ERROR(/Comparator) 요소 T로 판단된 최소값을 검색하고 제거합니다.

T poll ( IMatcher <T> matcher)

matcher.matches(T) true 인 큐에서 제공된 ERROR(/Comparator) 요소 T로 판단된 최소값을 검색하고 제거합니다.

T poll ()

이 큐의 헤드를 검색하고 제거합니다.

boolean remove (T object)

이 대기열에서 항목을 제거합니다.

int size ()
T take ()

대기열에서 제공된 ERROR(/Comparator) 요소 T로 판단되는 최소값을 검색하고 제거합니다.

T take ( IMatcher <T> matcher)

matcher.matches(T)true 인 대기열에서 첫 번째 요소 T를 검색하고 제거하며, 필요한 경우 해당 요소를 사용할 수 있을 때까지 기다립니다.

공개 생성자

조건우선순위차단큐

public ConditionPriorityBlockingQueue ()

ConditionPriorityBlockingQueue 생성합니다.

요소는 FIFO 순서로 우선순위가 지정됩니다.

조건우선순위차단큐

public ConditionPriorityBlockingQueue ( c)

ConditionPriorityBlockingQueue 생성합니다.

매개변수
c : 대기열의 우선순위를 지정하는 데 사용되는 ERROR(/Comparator) .

공개 메소드

추가하다

public boolean add (T addedElement)

지정된 요소를 이 큐에 삽입합니다. 대기열이 무제한이므로 이 메서드는 절대 차단되지 않습니다.

매개변수
addedElement T : 추가할 요소

보고
boolean true

던지기
ClassCastException 우선순위 큐의 순서에 따라 지정된 요소를 현재 우선순위 큐에 있는 요소와 비교할 수 없는 경우
NullPointerException 지정된 요소가 null인 경우

추가고유

public T addUnique (IMatcher<T> matcher, 
                T object)

이 대기열에 항목을 추가하여 주어진 조건과 일치하는 기존 객체를 대체합니다.

매개변수
matcher IMatcher : 기존 객체를 평가하는 매처

object T : 추가할 객체

보고
T 대체된 객체. 존재하지 않으면 null

분명한

public void clear ()

이 큐에서 모든 요소를 ​​제거합니다.

포함

public boolean contains (T object)

개체가 현재 이 대기열에 포함되어 있는지 확인합니다.

매개변수
object T : 찾을 객체

보고
boolean 주어진 객체가 큐에 포함되어 있으면 true . false> 그렇지 않으면.

getCopy

public  getCopy ()

대기열 내용의 복사본을 가져옵니다.

보고

반복자

public  iterator ()

보고

투표

public T poll (long timeout, 
                TimeUnit unit)

대기열에서 제공된 ERROR(/Comparator) 요소 T로 판단되는 최소값을 검색하고 제거합니다.

요소를 사용할 수 있을 때까지 timeout 시간을 차단합니다.

매개변수
timeout long : 요소가 사용 가능해질 때까지 기다리는 시간

unit TimeUnit : 타임아웃의 ERROR(/TimeUnit)

보고
T 일치하는 최소 요소 또는 일치하는 요소가 없는 경우 null

투표

public T poll (long timeout, 
                TimeUnit unit, 
                IMatcher<T> matcher)

matcher.matches(T) true 인 큐에서 제공된 ERROR(/Comparator) 요소 T로 판단된 최소값을 검색하고 제거합니다.

요소를 사용할 수 있을 때까지 timeout 시간을 차단합니다.

매개변수
timeout long : 요소가 사용 가능해질 때까지 기다리는 시간

unit TimeUnit : 타임아웃의 ERROR(/TimeUnit)

matcher IMatcher : 요소를 평가하는 데 사용할 IMatcher

보고
T 일치하는 최소 요소 또는 일치하는 요소가 없는 경우 null

투표

public T poll (IMatcher<T> matcher)

matcher.matches(T) true 인 큐에서 제공된 ERROR(/Comparator) 요소 T로 판단된 최소값을 검색하고 제거합니다.

매개변수
matcher IMatcher : 요소를 평가하는 데 사용할 IMatcher

보고
T 일치하는 최소 요소 또는 일치하는 요소가 없는 경우 null

투표

public T poll ()

이 큐의 헤드를 검색하고 제거합니다.

보고
T 이 큐의 선두. 큐가 비어 있는 경우는 null

제거하다

public boolean remove (T object)

이 대기열에서 항목을 제거합니다.

매개변수
object T : 제거할 객체

보고
boolean 해당 개체가 대기열에서 제거된 경우 true . false> 그렇지 않으면.

크기

public int size ()

보고
int 큐에 있는 요소의 수

가져가다

public T take ()

대기열에서 제공된 ERROR(/Comparator) 요소 T로 판단되는 최소값을 검색하고 제거합니다.

요소를 사용할 수 있도록 무기한 차단합니다.

보고
T 이 대기열의 선두

던지기
InterruptedException 기다리는 동안 중단된 경우

가져가다

public T take (IMatcher<T> matcher)

matcher.matches(T)true 인 대기열에서 첫 번째 요소 T를 검색하고 제거하며, 필요한 경우 해당 요소를 사용할 수 있을 때까지 기다립니다.

매개변수
matcher IMatcher : 요소를 평가하는 데 사용할 IMatcher

보고
T 일치하는 요소

던지기
InterruptedException 기다리는 동안 중단된 경우