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