【发布时间】:2017-03-03 11:11:55
【问题描述】:
正如How to peek StreamSocket for data in UWP apps 所要求的那样,我找不到任何方法来窥视数据(读取数据而不消耗缓冲区),我现在正尝试自己“窥视”,但仍然没有运气。
我不知道如何以允许我使用超时并在超时过去时保持连接可用的方式从 StreamSocket 读取数据。
最后,问题如下。在我的,比方说,IMAP 客户端,我从服务器得到响应,如果这个响应是否定的,我需要稍等片刻,看看服务器是否立即发送另一个响应(有时,服务器可以做到这一点,有额外的细节在错误甚至零数据包上关闭连接)。如果服务器没有发送另一个响应,我很好,只是离开方法并返回给调用者。然后调用者可以向流中发送更多数据、接收更多响应等。
因此,在发送请求并获得初始响应后,在某些情况下,我需要以非常小的超时间隔再次读取套接字,如果没有数据到达,则什么都不做。
【问题讨论】:
标签: sockets windows-runtime uwp winrt-async