.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();
            }

        }
    }

 

posted @ 2020-06-04 23:24  CHPowerljp  阅读(541)  评论(0编辑  收藏  举报