concurrency

    1熱度

    1回答

    我正在處理搜索引擎項目。爲了更快的抓取速度,我使用每個鏈接訪問一個goroutine。但是我遇到了兩個問題,讓我感到驚訝! 第一個是一個代碼示例: package main import "fmt" import "sync" import "time" type test struct { running int max int mu sync.Mu

    0熱度

    1回答

    我現在讀了一本書Thinking in Java,關於關鍵部分的章節,我無法理解一個例子,因爲我收到了本書中沒有描述的例外。示例如下所示: class Pair { private int x, y; public Pair(int x, int y) { this.x = x; this.y = y; } public Pair

    0熱度

    2回答

    我有一個下面的方法,它被多個線程同時調用來獲取活動套接字。它需要LinkedBlockingQueue作爲參數,然後我迭代,看看是否有liveSocket可用,如果它可用,然後我刪除並返回該套接字。 private Optional<Holder> getSocket(final LinkedBlockingQueue<Holder> endPoints) { Optional<Hold

    1熱度

    1回答

    我遇到了Go的sync.Map問題。以下是詳細內容: 我創建了一個全球同步的地圖,如: var MySyncGlobalMap = sync.Map{} 和事件我填充這個地圖與預期結構 map[int64]map[string]interface{}。所以基本上我想填充同步圖與關鍵作爲int64和價值作爲另一同步圖結構map[string]interface{}。下面是我如何填充地圖: //b

    1熱度

    1回答

    我有一個IO操作列表,我想同時執行,所以我使用的是async包中的mapConcurrently。 我的IO操作包括print表達式,例如: processLink :: String -> IO() processLink link = do result <- fetchLink print $ "Link " ++ link ++ "has been processed" 在我ma

    0熱度

    2回答

    下面是我的方法,我有單線程執行程序來執行run方法中的某個任務。 private void trigger(final Packet packet) { // this line is throwing exception Executors.newSingleThreadExecutor().execute(new Runnable() { @Override

    1熱度

    1回答

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

    0熱度

    1回答

    我有2個進程。第一個將一些數據發送給另一個,同步每一步。 實際發送的數據如下: Process : A sends 1 Process : B receives 1 Process : A sends 2 Process : B receives 2 的問題是,當我運行它從一開始發送的所有數據的過程中A和我看到的是這樣的: Process : A sends 1 Process : A

    2熱度

    1回答

    這個問題提出了運行使用生產者/消費者設計創建了一個socket服務器的同時,程序日誌,錯誤cpu time limit exceeded墜毀。我還發現,cpu使用率超過90%的時間。這裏是服務器的代碼,它可能會出錯,我該如何優化? 我用這個方法queue以避免爲每個請求的那麼多的threads創建。 在主方法(主線程) //holds socket instances ConcurrentLin

    0熱度

    1回答

    我需要一些幫助來實現併發C++編程。 我有名字的文件,命名爲"names.txt",格式如下: 0 James 1 Sara 2 Isaac 而且我有一個名爲"op.txt"另一個文件,該文件載有關於地名的一些操作的文件,格式如下: 0 1 + // this means add Sara to James and store it in 0 position 1 2 $ // this