java.util.concurrent

    1熱度

    1回答

    我想測試ConcurrentSkipListSet對比的ConcurrentLinkedQueue的表現,所以我做了個試驗: ConcurrentSkipListSet<Integer> concurrentSkipListSet=new ConcurrentSkipListSet<>((o1,o2)->{return 1;}); HashSet<Callable<Integer>> sets=

    0熱度

    1回答

    我正在實施生產者/消費者模式並使用LinkedTransferQueue集合。 我不希望我的製作者超出某些內存限制。 目前我正在使用此檢查,但從documentation開始,大小操作需要O(N)遍歷。對於我目前的實現中,它是好的, 但沒有任何比一個更好的辦法,我目前使用 ? LinkedTransferQueue<String> producerStringLinkedTransferQueue

    0熱度

    1回答

    設置線程池配置時,如何選擇正確的RejectedExecutionHandler? 我有一個發佈事件的遺留應用程序(這些事件可能在本地使用或可能被遠程進程佔用)。目前,政策是放棄,導致很多例外和錯過的事件。我們將同步隊列傳遞給線程池執行器。 我正在考慮將RejectedExecutionHandler更改爲呼叫者運行策略。這可能意味着調用者在達到線程綁定和隊列容量時花費時間運行該任務。我沒有看到任

    2熱度

    1回答

    我不想將def方法放在同步塊中,仍然想知道這是否可以用ConcurrentHashMap解決? /** Implement thread-safe updating of user's cart. Exit criteria is carts is updated atomically, product is appended in the end of cart.

    0熱度

    2回答

    我從一些教程中瞭解了這個概念,並且只要我知道一個線程正在迭代列表時,允許其他線程修改底層列表,並且我們不會得到ConcurrentModificationException(CME),但是在ArrayList的情況下,我們將獲得CME。 但在下面的程序中只有一個線程(主線程),但仍然獲得CME ..爲什麼? 是因爲迭代器? 如果我用COWAL取代AL比我沒有得到任何例外,但我沒有元素「D」以及..

    1熱度

    1回答

    更新: 總之,我有一個消息發送從用戶到服務的隊列。 但是,當一個服務獲得1000條消息時,比隊列由 支配,它和其他服務在隊列爲空之前不會收到消息。我需要這種方法的解決方案。 我對我的BlockingQueue有問題。比方說,我有100個外部服務,我負責向他們發送消息來自用戶。 用戶 - >我 - >第三方。 我在我的應用程序中使用隊列。當其中一個第三方服務不可用時發生問題: 從用戶接收到任何第三方

    1熱度

    1回答

    我有一個ConcurrentSkipListMap。我需要刪除低於key的元素。 這是我如何可以執行它: private ConcurrentNavigableMap<Double, MyObject> myObjectsMap = new ConcurrentSkipListMap<>(); //... myObjectsMap = myObjectsMap.tailMap(10.25,

    -1熱度

    1回答

    我明白我可以簡單地使用CountDownLatch直接,但是,作爲一個鍛鍊; Tibial和理解Phaser更好,我想用它代替的COuntDownLatch。 因此,我想創建N個awaiters的,這點需要翻轉閂一個線程。所有awaiters,如果翻轉之前到達,將阻塞,鎖存然而之後數下降,那麼以後所有await()回報瞬間。 與Phaser我不知道如何實現這一點...屏障很容易,因爲我們有N +

    0熱度

    1回答

    我有一些線程正在忙碌中,每個線程都會對HTTP Kit進行阻塞調用。我的代碼一直在工作,但最近約30分鐘後凍結。我的所有線程都停留在以下幾點:my_project.web.clj:35 sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)

    0熱度

    1回答

    我正在嘗試通過「Cay S Horstman」來解決書籍「真正不耐煩的Java SE 8」的第6章練習5。這裏是問題: 編寫一個應用程序,其中多個線程讀取文件集合中的所有單詞。使用ConcurrentHashMap>來跟蹤每個單詞出現的文件。使用合併方法更新地圖。 我試圖解決這個練習是這樣的:我 創建4個文件FILE1.TXT,FILE2.TXT,file3.txt,file4.txt FILE1