• c# httpPost的时候,The operation has timed out


    默认windows并发数是2,所以可以设置此数大一点

    ServicePointManager.DefaultConnectionLimit = 20;

    也可以使用abort释放http连接

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Net;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;
    
    namespace ConsoleApp47
    {
        class Program
        {
            static void Main(string[] args)
            {
                ServicePointManager.DefaultConnectionLimit = 2;
                var ts = DateTime.Now;
                for (int i = 0; i < 100; i++)
                {
                    try
                    {
                        var tm = DateTime.Now;
                        var cmd = "http://baidu.com";
                        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(cmd);
                        request.Method = "GET";
                        request.Accept = "Application/json";
                        request.ContentType = "application/json;charset=utf-8";
                        var response = (int)((HttpWebResponse)request.GetResponse()).StatusCode;
    
                        request.Abort();
    
                        var res = response == 200 ? 0 : response;
                        Console.WriteLine((DateTime.Now - tm).TotalMilliseconds + "    " + res);
                        //Thread.Sleep(50);
                    }
                    catch (Exception ex)
                    {
                        try
                        {
                            var tm = DateTime.Now;
                            var cmd = "http://baidu.com";
                            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(cmd);
                            request.Method = "GET";
                            request.Accept = "Application/json";
                            request.ContentType = "application/json;charset=utf-8";
                            var response = (int)((HttpWebResponse)request.GetResponse()).StatusCode;
    
                            request.Abort();
    
                            var res = response == 200 ? 0 : response;
                            Console.WriteLine((DateTime.Now - tm).TotalMilliseconds +"    "+i+ "    " + res);
                           // Thread.Sleep(50);
                        }
                        catch (Exception e)
                        {
                            
                            throw;
                        }
                        Console.WriteLine("************************" + i + ex.Message);
                    }
    
                }
    
                Console.WriteLine((DateTime.Now - ts).TotalMilliseconds + "    结束");
                Console.Read();
    
    
            }
        }
    }
  • 相关阅读:
    IOS Xcode编译项目-报错“ld: library not found for -XX”
    ios中关键词weak,assign,copy.strong等的区别
    iOS 控件
    iOS图片处理
    iOS 音频
    C语言文件操作
    iOS 删除相册中照片--来自简书
    ios sourecTree
    ios音频处理
    编码格式简介
  • 原文地址:https://www.cnblogs.com/congqiandehoulai/p/12720725.html
Copyright © 2020-2023  润新知