我陷入了這個問題。我有一個API,我必須在循環中多次調用它。獲取IList中所有迭代的API響應。我必須對該IList執行一些操作。我正在循環調用我的API。所以假設有5次迭代循環。每當一次命中API時,它都會等待響應,然後再響應另一個響應。我想在線程中編寫這些調用。在最後得到所有線程的響應。然後根據我的業務邏輯來處理這個響應。C#調用api使用線程調用api循環通過
我的虛擬代碼就像。
foreach (.....)
{
//want to open thread here
mylist.Add(CalltoAPI(Params));
}
//want to wait for all thread to be closed.
PerformBusinessLogic(mylist);
這個問題太廣泛了...請進一步描述api調用的行爲,比如這是一個web調用,它的平均持續時間等。 – Leonardo
這正是微軟的Reactive Framework設計的做。您將最終得到如下查詢:從Observable.Start(()=> PerformBusinessLogic(x,)中的z從Observable.Start(()=> CalltoAPI(x))中的y從mylist.ToObservable() y))選擇z'。這都是多線程的。好的一點是,當你訂閱查詢時,你可以在生成時返回值,而不是在最後。它非常乾淨。 – Enigmativity
@Leonardo - 爲什麼這太寬泛?擁有適當的簽名等會很好,但對我來說這似乎是一個簡單的場景。我已投票重新開放。 – Enigmativity