executorservice

    0熱度

    1回答

    我一直在尋找一個像這樣的情況的解決方案: 我有一個可加密的HashSet,我將這個Set提交給一個執行器並行執行。 現在我想要一旦任何提交的任務完成,我應該能夠分配一個新的Callable執行器。 我試過這段代碼,但是如果使用executor.invoke,那麼Executor會等待,直到所有任務完成,如果我使用executor.submit,那麼任務將按順序完成。 任何幫助,將不勝感激。 pac

    1熱度

    1回答

    我們正在使用hazelcast執行程序服務在我們的服務器集羣中分發任務。 我們希望關閉其中一臺服務器並將其從羣集中取出,但允許其繼續工作一段時間以完成正在執行的操作,但不接受來自榛木執行器服務的任何新任務。 我不想關閉hazelcast實例,因爲當前任務可能需要它來完成他們的工作。 關閉hazelcast執行器服務不是我想要的。這就關閉了整個集羣的執行者。 我想繼續處理本地隊列中的任務,直到它爲空

    0熱度

    3回答

    我試圖實現一個功能,其中或者可以在規定的時間內完成可調參數或者操作超時。我曾希望ExecutorService.awaitTermination()會這樣做,但很驚訝地發現它沒有。代碼如下。運行永不完成。 public class Counter implements Callable<Void> { public static void main(String[] args) thr

    0熱度

    2回答

    在java中,我想運行多個線程並從所有線程獲取響應。 我遇到的問題是,如果其中一個線程在我執行String temp = r.get()時拋出一個異常,它將丟棄到catch中,並且不會給予其餘線程的響應。 是否有處理所有響應的方式,無論個別線程是否拋出異常? 我的測試碼是 ExecutorService es = Executors.newFixedThreadPool(2); List

    2熱度

    1回答

    我已經對數據庫的兩個並行讀取實現了兩個獨立的實現。 第一個實施方案是使用ExecutorService和newCachedThreadPool()構造函數和期貨:我只是打一個電話,爲每個閱讀案例返回一個未來,然後在我撥打get()的所有電話後。這個實現工作正常並且速度夠快。 第二個實現是使用並行流。當我將並行流調用放入同一個ExecutorService池時,它的作用幾乎是慢了5倍並且它似乎沒有使

    4熱度

    2回答

    我有一個空指針異常,因爲在列表adPics處有一些空值。它很少發生。這怎麼可能? (並行此代碼下載圖像,並將它們保存在本地。) List<String> downloadAdImages(List<String> imagesUrls, final String itemFolder) { final List adPics = new ArrayList<>(); fin

    1熱度

    3回答

    我是新來的併發性,我試圖爲do-while循環實現執行程序服務併發。但是,我總是碰上RejectedExecutionException 這裏是我的示例代碼: do { Future<Void> future = executor.submit(new Callable<Void>() { @Override public Void call() throws

    0熱度

    1回答

    我想在使用ExecutorService的Java中實現一個小型的生產者 - 消費者示例。 這裏是我的主類 class Example { public static void main(String args[]) { BlockingQueue<String> queue = new ArrayBlockingQueue<>(1000); Producer pr

    0熱度

    1回答

    問題: 我想知道RunTimeException何時在線程的run方法中拋出,線程的局部線程是否會被保留?這個問題的答案在於我在下面提出的問題。所以說,如果線程死亡(當拋出異常時),線程本地快照get被清除,或者如果線程不死在那種情況下線程本地發生了什麼。我們是否需要以編程方式處理? 場景: 在重負載期間,請求進入並且處理過程耗時過長,在創建響應之前,異步上下文超時。在這種情況下會發生什麼?正在處

    0熱度

    1回答

    我需要使用任何Executor或ExecutorService執行任務。任務(Callable或Runnable)應該無限運行,但如果發生任何異常,應該將其重新提交給提交任務的線程。 我知道future.get()會拋出ExecutionException對我來說: ExecutorService executor = Executors.newSingleThreadExecutor();