10

以下を書くとき、私のコードはGetResponseにロックされます。なんで?

        try
        {
            WebRequest myWebRequest = WebRequest.Create(strURL);
            WebResponse myWebResponse = myWebRequest.GetResponse();
            //more code here
4

1 に答える 1

45

これは通常、同じホストに複数のリクエストを行い、を破棄しなかった場合に発生しますWebResponse

デフォルトの接続管理設定では、同じホストへの接続を一度に2つ(または4つ、覚えていないかもしれません)しか開くことができません。これを本当に<connectionManagement>変更する必要がある場合は、 app.config要素を使用してください。ただし、通常は、次のものを破棄するだけで問題ありませんWebResponse

try
{
    WebRequest myWebRequest = WebRequest.Create(strURL);
    using (WebResponse myWebResponse = myWebRequest.GetResponse())
    {
        //more code here
于 2009-09-06T20:29:59.160 に答える