[問題] BlockingQueue
最近正在看Thinking in Java 4/e, 讀一讀有些問提陸續想請教大家
------------------------------------------------------------
Code here: https://pastebin.com/CKMPzJj1
我不是很明白下列這個code中,下面這段
for (int i = 0; i < 10; i++) {
queue.add(new PrioritizedTask(i));
// 怎麼能確保一定加入這麼快,並且都排序好了?
// 中途Consumer不會插隊進來拿嗎??????
}
為何每次測試,都能確保 queue都先add完全部並排序好之後,consumer才來拿?
我以為會每次producer放進一個,consumer就會馬上拿走,
想請問我有哪部分是理解錯了,感謝!
本來以為要用queue.addAll(..)這個方法才比較保險,想問問大家想法。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.217.172.51
※ 文章網址: https://www.ptt.cc/bbs/java/M.1498287863.A.EB3.html
※ 編輯: uopsdod (180.217.172.51), 06/24/2017 15:05:05
※ 編輯: uopsdod (180.217.172.51), 06/24/2017 15:05:28
※ 編輯: uopsdod (180.217.172.51), 06/24/2017 15:07:20
→
06/24 15:17, , 1F
06/24 15:17, 1F
→
06/24 15:19, , 2F
06/24 15:19, 2F
→
06/27 23:12, , 3F
06/27 23:12, 3F
→
06/28 19:20, , 4F
06/28 19:20, 4F
→
06/29 01:10, , 5F
06/29 01:10, 5F
推
07/05 17:44, , 6F
07/05 17:44, 6F
→
07/05 17:48, , 7F
07/05 17:48, 7F
→
07/05 17:59, , 8F
07/05 17:59, 8F
→
07/05 18:00, , 9F
07/05 18:00, 9F
→
07/05 18:04, , 10F
07/05 18:04, 10F
→
07/05 18:05, , 11F
07/05 18:05, 11F
→
07/05 18:10, , 12F
07/05 18:10, 12F
java 近期熱門文章
PTT數位生活區 即時熱門文章