1. Apabila baris gilir penuh dan elemen dimasukkan ke dalam baris gilir sekali lagi, pengecualian IllegalStateException (QueueFull) akan dilemparkan.
2. Jika baris gilir kosong, mengekstrak elemen daripada baris gilir akan menyebabkan pengecualian NoSuchElementException.
Instance
public class MyBlockQueue { public static void main(String[] args) { ArrayBlockingQueue<Integer> q = new ArrayBlockingQueue<Integer>(3); new Thread(()->{ q.add(1); System.out.println(Thread.currentThread().getName()+"放入一个元素"); q.add(2); System.out.println(Thread.currentThread().getName()+"放入一个元素"); q.add(3); System.out.println(Thread.currentThread().getName()+"放入一个元素"); },"线程1").start(); new Thread(()->{ q.remove(); System.out.println(Thread.currentThread().getName()+"拿走一个元素"); q.remove(); System.out.println(Thread.currentThread().getName()+"拿走一个元素"); q.remove(); System.out.println(Thread.currentThread().getName()+"拿走一个元素"); q.remove(); System.out.println(Thread.currentThread().getName()+"拿走一个元素"); },"线程2").start(); } }
Atas ialah kandungan terperinci Analisis contoh pengecualian yang dilemparkan oleh baris gilir java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!