2015-07-11 43 views
0

我的C++程序的一個邏輯部分必須獲取調用curl(linux程序,而不是庫)的文本文件並通過管道獲取其輸出。可能有許多網址需要下載。下載時間可能是合理的。該計劃旨在「可擴展」和有效。從C++運行CURL到異步獲取幾個URL

所以,問題是什麼變體是優選的:捲曲的

  1. 運行單個實例給它的URL
  2. 的列表中創建線程的每個調用與單個URL和隨後的聚集捲曲處理程序池的線程輸出。

換句話說,當下載幾個url或者我必須手動實現它時,curl是異步的。

+0

你想使用'curl'程序還是libcurl庫? – Nax

+0

@Nax我要使用'curl'程序。 – DimG

+0

重複http://stackoverflow.com/questions/8378899/downloading-with-curl-using-multiple-connections – perencia

回答

0

如果你從管道調用cURL,那麼首選的解決方案就是創建一個線程池。由於線程彼此獨立,因此它們一次獲取多個URL。

但是,另一個有效的解決方案是使用cURL庫而不是管道。這是一個example from libcurl