天天看點

Java集合源碼學習(17)_BlockingQueue接口的實作LinkedBlockingQueue

LinkedBlockingQueue繼承了AbstractQueue,實作了BlockingQueue接口;

1:内部使用單向連結清單來存儲隊列元素

2:元素的排序是按照FIFO的順序,隊列的第一個元素是入隊列時間最久的那個元素(隊列的頭部);

3:如果構造函數不指定大小,是無界的隊列;如果指定大小,是有界隊列,初始化時設定隊列大小,之後不可再次設定;

内部的單項連結清單的節點定義:

static class Node<E> {
	E item;
	Node<E> next;

	Node(E x) {
		item = x;
	}
}