কম্পিউটার টিউটোরিয়াল

ArrayBlockingQueue এবং LinkedBlockingQueue-এর পার্থক্য

BlockingQueue ইন্টারফেস Java.util.concurrent প্যাকেজের অংশ। BlockingQueue স্পেশালি প্রডিউসার-কনসিউমার কিউর জন্য ডিজাইন করা হয়েছে এবং কালেকশন সাপোর্ট করে। এই ইন্টারফেস চারটি পার্টে ভাগ করা হয়েছে যাতে কিউর ওপর করা যাওয়া সব টাইপের অপারেশন সাপোর্ট করা যায়। এটি নাল কি এক্সেপ্ট করে না। ArrayBlockingQueue এবং LinkedBlockingQueue উভয়ই BlockingQueue ইন্টারফেস ইমপ্লিমেন্ট করে।

ArrayBlockingQueue এবং LinkedBlockingQueue উভয়ই এলিমেন্টগুলো FIFO অর্ডারে সংরক্ষণ করে। উভয় কিউতে ইনসারশন সবসময় টেইলে হয় এবং রিমুভাল হেড থেকে হয়।

Sr. No. Key ArrayBlockingQueue LinkedBlockingQueue
1 Basic Array-ব্যাকড Linked list-ব্যাকড
2 Bounded বাউন্ডেড অ্যারে কিউ। একবার তৈরি হলে ক্যাপাসিটি পরিবর্তন করা যায় না আনবাউন্ডেড কিউ
3 Throughput লিংকড কিউর চেয়ে কম থ্রুপুট লিংকড কিউদের অ্যারে-বেজড কিউর চেয়ে বেশি থ্রুপুট
4 Lock সিঙ্গেল-লক ডাবল কন্ডিশন অ্যালগরিদম ব্যবহার করে পুটলক (putLock) ইনসারশনের জন্য এবং টেকলক (takeLock) রিমুভালের জন্য
  1. জাভাতে Serialization এবং Externalization-এর পার্থক্য

  2. জাভাতে Iterator এবং Enumeration-এর পার্থক্য

  3. জাভাতে Queue ইন্টারফেসের peek(), poll() এবং remove() মেথডের পার্থক্য কী?

  4. জাভাতে ArrayList এবং HashSet-এর পার্থক্য