首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HttpWebRequest GetResponseStream是如何工作的

HttpWebRequest GetResponseStream是如何工作的
EN

Stack Overflow用户
提问于 2012-07-07 00:00:33
回答 2查看 1.3K关注 0票数 0

假设我创建了一个HttpWebRequest,并将其称为GetResponseStream方法。当我尝试读取流时,是否所有数据都已经复制到本地缓冲区,或者它是通过读取数据来工作的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-27 06:00:29

GetResponseStream方法返回Stream抽象类的特定实现,它是一个NetworkStream。这种类型的流被绑定到套接字。它是指向TCP/IP套接字数据流的指针。如果服务器已经向其中写入了一些数据,则当客户端开始从该流中读取数据时,如果您尝试读取比当前可用数据更多的数据,则客户端将只读取套接字上可用的数据,直到服务器向套接字写入更多数据为止。

因此,如果我们假设服务器已经向套接字写入了5个字节,如果您尝试从客户端的流中读取5个字节,您将能够检索到这5个字节,但是如果您尝试读取6个字节,则读取操作将阻塞,直到服务器再发送一个字节或超时。

票数 2
EN

Stack Overflow用户

发布于 2012-07-07 00:10:15

如果您查看that example,您会发现您需要首先调用.GetResponse(),这将回答您的问题。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11365749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档