blockingqueue

    3熱度

    1回答

    我正在編寫自己的BlockingQueue實現。我試圖避免使用方法的synchronized關鍵字。我反而喜歡使用ReentrantLock。 寫這個實現的最好方法是什麼?我不是Java忍者,如果有人能夠在我的代碼中找出錯誤並提出更好的實現方法,我會非常感激。 public class MyBlockingQueue<T> { private Queue<T> queue; private

    5熱度

    2回答

    快速澄清,請 我知道BlockingQueues是線程安全的。 這是否意味着我可以通過一個單一的參照阻塞隊列誰可以不管三七二十一丟棄事件所有的生產者由單個消費者消費,並沒有被破壞? 否則不得不產生多達20 BlockingQueues可能或不可能定期更新,並以任何效率閱讀它們似乎是一項難以克服的任務。

    0熱度

    2回答

    我的應用程序啓動使用blockingQueue的守護進程線程。當它使用kill -3殺死時,應用程序不會完全停止,並且由此產生的堆棧顯示它仍在等待BlockingQueue.take()。 任何建議,以幫助乾淨的關閉將深表讚賞

    0熱度

    2回答

    被分配唯一的ID,我需要插入其中有兩個columns- ID Primary Key String Data String 數據庫因此,這意味着ID應該是唯一的每一次,否則會拋出一個異常duplicate row in unique index插入時。我需要在這個範圍內1-100000 之間做出選擇ID因此,這意味着每個線程應該使用唯一的ID始終在線 下面是多線程程序我寫了,將後每次插入到數

    1熱度

    1回答

    我已經使用BlockingQueue實現通過隊列中的服務處理我的事件。但是,如果服務器發生故障,那麼來自該隊列的所有事件都將被刪除,因此我缺少要處理的事件。 (我正在尋找一些內部數據庫,其中服務器可以存儲隊列中的事件/消息,並且如果服務器再次關閉並重新啓動,它可以加載所有事件/消息以再次處理,而無需手動干預)。 對此有任何幫助。我不確定我是否應該使用Apache ActiveMQ。我正在使用apa

    1熱度

    1回答

    我正在使用ConcurrentQueue作爲底層集合作爲我的程序的主要組件之一的無限制阻塞集合。 我正在尋找一種很好的方法來收集關於阻塞收集的消耗行爲的統計信息,例如在一天中隊列中的最大數量或阻塞集合在隊列建立時調整大小的最大數量。 我錯過了什麼,或者我需要編寫一個覆蓋某些方法的繼承類,以便我可以添加更多的使用情況統計信息?

    0熱度

    2回答

    我對BlockingQueue的概念很陌生,並且覺得它不需要wait()和notify()。我已經寫以下代碼作爲線程同步的初步試驗(省略爲清楚起見一些代碼): q = new LinkedBlockingQueue<flight>(); generator = new EventGenerator(q,flight); southwest = new Airline(q); new Th

    -1熱度

    2回答

    我正在閱讀Java源代碼,遇到兩個小問題。我不知道爲什麼Sun這樣寫代碼,這裏有問題(JDK版本:1.6): 問題1: java.util.concurrent.PriorityBlockingQueue#offer(E e): public boolean offer(E e) { final ReentrantLock lock = this.lock; lock.l

    1熱度

    1回答

    我的下一個項目: 春季(3.2)爲基礎的Web應用程序(Tomcat的7),在後臺我有幾個任務。 我有一個處理一些信息的隊列。該隊列正在定期更新(但只是在空時)。 另外我有幾個線程週期性排隊來自這個隊列和進程的數據。 對於計劃我想使用ScheduledExecutorService。 我有幾個問題\問題: 如何保持這個隊列?我認爲它應該是全球性的。我應該在某些「持有者」類中將其設爲靜態嗎?這不是一

    13熱度

    5回答

    我正在尋找一種方法來阻止,直到BlockingQueue爲空。 我知道,在多線程環境中,只要有生產者將物品放入BlockingQueue,可能會出現隊列變空並且幾納秒後滿了物品的情況。 但是,如果只有一個生產者,那麼它可能想要等待(並阻塞),直到隊列停止放入隊列後隊列爲空。 的Java /僞代碼: // Producer code BlockingQueue queue = new Blocki