শর্ত অগ্রাধিকার ব্লকিং সারি

public class ConditionPriorityBlockingQueue
extends Object implements Iterable<T>

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


একটি থ্রেড-সেফ ক্লাস, যাতে PriorityBlockingQueue মতো অপারেশন রয়েছে এবং যা একটি নির্দিষ্ট শর্তের সাথে মেলে এমন অবজেক্ট পুনরুদ্ধার করতে পারে।

ইটারেশন থ্রেড-সেফ হলেও কনসিস্টেন্ট নয়। ইটারেটর তৈরির সময় কিউ-এর একটি কপি তৈরি করা হয় এবং সেই কপিটিই ইটারেশনের টার্গেট হিসেবে ব্যবহৃত হয়। ইটারেশন চলাকালীন কিউ পরিবর্তিত হলে, কোনো ConcurrentModificationException থ্রো করা হবে না, কিন্তু ইটারেটরটিও পরিবর্তিত বিষয়বস্তু প্রতিফলিত করবে না।

আরও দেখুন:

সারসংক্ষেপ

নেস্টেড ক্লাস

class ConditionPriorityBlockingQueue.AlwaysMatch <T>

একটি ConditionPriorityBlockingQueue.IMatcher যা যেকোনো অবজেক্টের সাথে মেলে।

interface ConditionPriorityBlockingQueue.IMatcher <T>

কোনো উপাদান কোনো শর্তের সাথে মেলে কিনা তা নির্ধারণ করার একটি ইন্টারফেস।

সরকারি নির্মাণকারী

ConditionPriorityBlockingQueue ()

একটি ConditionPriorityBlockingQueue তৈরি করে

উপাদানগুলোকে FIFO ক্রমে অগ্রাধিকার দেওয়া হবে।

ConditionPriorityBlockingQueue (Comparator<T> c)

একটি ConditionPriorityBlockingQueue তৈরি করে

জনসাধারণের পদ্ধতি

boolean add (T addedElement)

নির্দিষ্ট উপাদানটিকে এই সারিতে সন্নিবেশ করে।

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

এই কিউতে একটি আইটেম যোগ করে, যা প্রদত্ত শর্তের সাথে মেলে এমন বিদ্যমান যেকোনো অবজেক্টকে প্রতিস্থাপন করে।

void clear ()

এই সারি থেকে সমস্ত উপাদান মুছে ফেলে।

boolean contains (T object)

কোনো অবজেক্ট বর্তমানে এই কিউতে আছে কিনা তা নির্ণয় করুন।

List<T> getCopy ()

কিউ-এর বিষয়বস্তুর একটি অনুলিপি নিন।

Iterator<T> iterator ()

T poll ( IMatcher <T> matcher)

কিউ থেকে সর্বনিম্ন মানটি খুঁজে বের করে এবং সরিয়ে দেয় (যেখানে matcher.matches(T) true হয় এবং যা প্রদত্ত Comparator এলিমেন্ট T দ্বারা নির্ণীত হয়)।

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

কিউ থেকে সর্বনিম্ন মানটি খুঁজে বের করে এবং সরিয়ে দেয় (যেখানে matcher.matches(T) true হয় এবং যা প্রদত্ত Comparator এলিমেন্ট T দ্বারা নির্ণীত হয়)।

T poll (long timeout, TimeUnit unit)

কিউতে থাকা প্রদত্ত Comparator এলিমেন্ট T দ্বারা নির্ণীত সর্বনিম্ন মানটি খুঁজে বের করে এবং অপসারণ করে।

T poll ()

এই কিউ-এর প্রথম আইটেমটি পুনরুদ্ধার করে এবং মুছে ফেলে।

boolean remove (T object)

এই সারি থেকে একটি আইটেম মুছে ফেলে।

int size ()
T take ()

কিউতে থাকা প্রদত্ত Comparator এলিমেন্ট T দ্বারা নির্ণীত সর্বনিম্ন মানটি খুঁজে বের করে এবং অপসারণ করে।

T take ( IMatcher <T> matcher)

কিউ থেকে প্রথম উপাদান T খুঁজে বের করে সরিয়ে দেয়, যেখানে matcher.matches(T) true হয়; প্রয়োজনে এই ধরনের কোনো উপাদান উপলব্ধ না হওয়া পর্যন্ত অপেক্ষা করে।

সরকারি নির্মাণকারী

শর্ত অগ্রাধিকার ব্লকিং সারি

public ConditionPriorityBlockingQueue ()

একটি ConditionPriorityBlockingQueue তৈরি করে

উপাদানগুলোকে FIFO ক্রমে অগ্রাধিকার দেওয়া হবে।

শর্ত অগ্রাধিকার ব্লকিং সারি

public ConditionPriorityBlockingQueue (Comparator<T> c)

একটি ConditionPriorityBlockingQueue তৈরি করে

প্যারামিটার
c Comparator : কিউ-এর অগ্রাধিকার নির্ধারণে ব্যবহৃত 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>

কপি পান

public List<T> getCopy ()

কিউ-এর বিষয়বস্তুর একটি অনুলিপি নিন।

ফেরত
List<T>

পুনরাবৃত্তিকারী

public Iterator<T> iterator ()

ফেরত
Iterator<T>

জরিপ

public T poll (IMatcher<T> matcher)

কিউ থেকে সর্বনিম্ন মানটি খুঁজে বের করে এবং সরিয়ে দেয় (যেখানে matcher.matches(T) true হয় এবং যা প্রদত্ত Comparator এলিমেন্ট T দ্বারা নির্ণীত হয়)।

প্যারামিটার
matcher IMatcher : এলিমেন্টগুলো মূল্যায়ন করার জন্য ব্যবহৃত IMatcher

ফেরত
T সর্বনিম্ন মিলে যাওয়া উপাদান, অথবা কোনো মিলে যাওয়া উপাদান না থাকলে null

জরিপ

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

কিউ থেকে সর্বনিম্ন মানটি খুঁজে বের করে এবং সরিয়ে দেয় (যেখানে matcher.matches(T) true হয় এবং যা প্রদত্ত Comparator এলিমেন্ট T দ্বারা নির্ণীত হয়)।

কোনো একটি এলিমেন্টের উপলব্ধ হওয়ার জন্য timeout সময় পর্যন্ত বাধা সৃষ্টি করে।

প্যারামিটার
timeout long : কোনো একটি উপাদান উপলব্ধ হওয়ার জন্য অপেক্ষা করার সময়

unit TimeUnit : টাইমআউটের TimeUnit

matcher IMatcher : এলিমেন্টগুলো মূল্যায়ন করার জন্য ব্যবহৃত IMatcher

ফেরত
T সর্বনিম্ন মিলে যাওয়া উপাদান, অথবা কোনো মিলে যাওয়া উপাদান না থাকলে null

নিক্ষেপ
InterruptedException

জরিপ

public T poll (long timeout, 
                TimeUnit unit)

কিউতে থাকা প্রদত্ত Comparator এলিমেন্ট T দ্বারা নির্ণীত সর্বনিম্ন মানটি খুঁজে বের করে এবং অপসারণ করে।

কোনো একটি এলিমেন্টের উপলব্ধ হওয়ার জন্য timeout সময় পর্যন্ত বাধা সৃষ্টি করে।

প্যারামিটার
timeout long : কোনো একটি উপাদান উপলব্ধ হওয়ার জন্য অপেক্ষা করার সময়

unit TimeUnit : টাইমআউটের TimeUnit

ফেরত
T সর্বনিম্ন মিলে যাওয়া উপাদান, অথবা কোনো মিলে যাওয়া উপাদান না থাকলে null

নিক্ষেপ
InterruptedException

জরিপ

public T poll ()

এই কিউ-এর প্রথম আইটেমটি পুনরুদ্ধার করে এবং মুছে ফেলে।

ফেরত
T এই কিউ-এর প্রধান, অথবা কিউটি খালি থাকলে null

অপসারণ করুন

public boolean remove (T object)

এই সারি থেকে একটি আইটেম মুছে ফেলে।

প্যারামিটার
object T : অপসারণ করার বস্তুটি

ফেরত
boolean প্রদত্ত অবজেক্টটি কিউ থেকে সরানো হলে true । অন্যথায় false>

আকার

public int size ()

ফেরত
int সারিতে থাকা উপাদানের সংখ্যা

গ্রহণ করুন

public T take ()

কিউতে থাকা প্রদত্ত Comparator এলিমেন্ট T দ্বারা নির্ণীত সর্বনিম্ন মানটি খুঁজে বের করে এবং অপসারণ করে।

কোনো একটি উপাদান উপলব্ধ হওয়ার জন্য অনির্দিষ্টকালের জন্য ব্লক হয়ে থাকে।

ফেরত
T এই সারির সামনে

নিক্ষেপ
InterruptedException অপেক্ষা করার সময় বাধাগ্রস্ত হলে

গ্রহণ করুন

public T take (IMatcher<T> matcher)

কিউ থেকে প্রথম উপাদান T খুঁজে বের করে সরিয়ে দেয়, যেখানে matcher.matches(T) true হয়; প্রয়োজনে এই ধরনের কোনো উপাদান উপলব্ধ না হওয়া পর্যন্ত অপেক্ষা করে।

প্যারামিটার
matcher IMatcher : এলিমেন্টগুলো মূল্যায়ন করার জন্য ব্যবহৃত IMatcher

ফেরত
T মিলে যাওয়া উপাদান

নিক্ষেপ
InterruptedException অপেক্ষা করার সময় বাধাগ্রস্ত হলে