1
隊列我有一個ThreadPoolExecutor
是滿足我DownloadTask implements Runnable{private String taskId...
任務,我必須隨時可能獲得來自ThreadPoolExecutor
隊列中定義的任務,例如,使用任務ID:如何移動Java中
mDownloadTasksPool.getQueue();
什麼是travesre隊列和獲得定義元素的最佳方式是什麼?
它可能有一個列表與所有重複的任務,但它看起來不是很優雅。
我不想使用單獨的集合對象,我只想使用它的BlockingQueue使用ThreadPoolExecutor。 – pvllnspk 2013-02-11 15:25:42
好吧,在這種情況下,每當你想找到一個任務時,你將不得不遍歷整個隊列。該隊列也將被TPE使用,但幸運的是,LinkedlockingQueue和ArrayBlockingQueue的迭代器是弱一致的,並且不會拋出ConcurrentModificationException。 – 2013-02-11 15:40:39
'ThreadPoolExecutor'本身沒有_it's_'BlockingQueue'。你必須在構造函數中提供你自己的隊列。大多數'Executors'提供的多線程TPE使用LinkedBlockingQueues。 – 2013-02-11 15:46:20