0
有沒有一種方法可以在循環中添加流時開始返回流。WCF在完全寫入之前返回一個流
我的目標是返回x個記錄。 例如10條記錄。但我不想在發送之前處理它們並緩衝它們,因爲它需要每個記錄一秒鐘,以便延遲10秒。
我更喜歡消費者在添加記錄時收到記錄,並且可以在全部10條記錄完成之前開始處理它們。
我一直要求他們一個一個地等待,直到兩邊都被處理完畢,才請求下一個。但是這不是更慢嗎?因爲在我看來,服務器或消費者會在閒置時處於閒置狀態,而當其他人正在處理閒置時,可能會朝着最終目標進行處理。
兩個實現等到所有10個都返回前完成。
//public List<MyObject> GetObjects(int count)
public Stream GetStream(int count)
{
var stream = new MemoryStream();
for (int i = 0; i < count; i++)
{
var myObject = GetNextObject();
if (myObject!= null)
{
stream .Write(myObject);
}
else // break from loop
break;
}
return stream;
}
看起來像什麼後謝謝:) – Mcloving