我知道这是一个模糊的问题,尤其是因为我不提供任何代码,但是我开发一个.net 2.0应用程序,我们有一个WebRequest的哪些职位数据,内部内置API。

奇怪的事情发生在我们的第三(和总是第三),其未能在请求的GetRequestStream()方法的后续请求。第一和第二次其所谓的,一切都很好。在第三次,它挂了一下,最终超时。

在API正在家中其他应用程序调用,所以我们知道它不是一个服务器端,或网络问题。我们试图在多台计算机 - 它们都具有相同的问题。有没有人有过这个问题,或有没有人有关于如何调试(因为响应对象没有任何一代产量,或至少没有什么用处)任sugestions。

有帮助吗?

解决方案

这通常,如果你不处置的WebResponse的发生。有适用于连接的数量从客户端在同一台机器的限制,默认情况下它的两项。该连接可重复使用(或关闭),如果您关闭WebResponse的。 using语句是你的朋友在这里:

WebRequest request = [...];
// Do stuff with the request stream here (and dispose it)
using (WebResponse response = request.GetResponse())
{
    // Stuff with the response
}

其他提示

是的,你完全正确。响应没有被正确地设置。我们一直在离开这个高达垃圾收集器,你猜对了其中,wasnt及时收集。不幸的是,我闭上了浏览器,忘了阅读任何答案(笑是多么愚蠢,你认为我觉得),问题就解决了。

我已经学会了两件事今晚。 1,处置您的WebRequests正确的;和图2,更注重堆栈上溢答案!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top