public class RequestState { public HttpWebRequest request { get; set; } public HttpWebResponse response { get; set; } public Stream streamResponse { get; set; } } public class HttpHelper { public delegate void GetData(string text); public event GetData Data; public class HttpCallBackEvent { public HttpWebRequest request; public byte[] file; public string name; public string fileName; } public static ManualResetEvent allDone = new ManualResetEvent(false); public Stream HttpGet(string url ) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(url)); request.Method = "GET"; RequestState state = new RequestState(); state.request = request; request.BeginGetResponse(webResponseCallack,state); allDone.Reset(); allDone.WaitOne(); return state.streamResponse; } private void webResponseCallack(IAsyncResult result) { try { RequestState state = (RequestState)result.AsyncState; HttpWebRequest request = state.request; state.response = (HttpWebResponse)request.EndGetResponse(result); state.streamResponse = state.response.GetResponseStream(); } catch { } finally { allDone.Set(); } }}
windows phone 中HttpWebRequest异步线程同步
作者:张巍出处:http://beixiu.net/ 本文版权归作者和博客园共有,转载请注明出处,且在文章页面明显位置给出原文连接
【推广】
免费学中医,健康全家人
原文地址:https://www.cnblogs.com/ac1985482/p/2585715.html