Служба WCF с ответом потока - PullRequest
       21

Служба WCF с ответом потока

0 голосов
/ 11 августа 2009

У меня есть служба WCF, и один из методов возвращает Stream. Теперь возникает вопрос: пока я пытаюсь использовать этот объект Stream, я пытаюсь использовать поток по сети или клиент получил полный поток на своей стороне?

Будет ли какая-то разница, если бы я использовал RESTful вместо WCF?

1 Ответ

5 голосов
/ 11 августа 2009

Смысл использования потокового интерфейса в WCF состоит в том, что клиент получает поток, из которого он может читать блоки байтов. Весь возвращаемый объект (файл, изображение, видео) будет НЕ полностью собран на сервере и отослан обратно как однажды огромная порция, вместо этого клиент может одновременно извлекать порции из потока, возвращенного из WCF сервис.

Ваш клиент получает экземпляр «Stream», из которого он может затем прочитать данные, например, из FileStream или MemoryStream. Таким образом, объем памяти, необходимый в любой момент времени, уменьшается до управляемого размера (вместо потенциально нескольких гигабайт в режиме с буферизацией вы будете передавать большой файл, например, кусками размером 1 МБ или чем-то в этом роде).

Марк

...