.NET HTTP异步请求(适用于并发请求同时大于上千上万个)

Posted chpowerljp-it

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.NET HTTP异步请求(适用于并发请求同时大于上千上万个)相关的知识,希望对你有一定的参考价值。

方法 一:

WebRequest Request= WebRequest.Create(strURL);
Request.BeginGetResponse(new AsyncCallback(OnResponse), Request);

protected void OnResponse(IAsyncResult ar)
{
   WebRequest wrq = (WebRequest)ar.AsyncState;
   WebResponse wrs = wrq.EndGetResponse(ar);

   // read the response ...
}

方法二:

class Program
    {
        private const string url = "http://";
        static async Task Main(string[] args)
        {
            await  AsyncTestTask();
        }

      

        public static async Task AsyncTestTask()
        {
            Console.WriteLine("当前任务Id是:"+Thread.CurrentThread.ManagedThreadId);
            Console.WriteLine(nameof(AsyncTestTask));
            using (var client = new WebClient())
            {
                string content = await client.DownloadStringTaskAsync(url);
                Console.WriteLine("当前任务Id是:"+Thread.CurrentThread.ManagedThreadId);
                Console.WriteLine(content.Substring(0,100));
                Console.ReadLine();
            }

        }
    }

 

以上是关于.NET HTTP异步请求(适用于并发请求同时大于上千上万个)的主要内容,如果未能解决你的问题,请参考以下文章

对外部 API 的 HTTP 请求适用于 .NET,但不适用于 React(CORS 问题)

连接没有通过 Python3 异步并发 HTTP 获取请求关闭

优化 http 并发请求

断路器模式是不是也适用于异步请求?

并发与异步

异步编程CompletableFuture实现高性能系统优化之请求合并