public void Stop() { if (request != null) { //request.Abort (); request = null; } if (mjpgReader != null) { mjpgReader.Stop(); mjpgReader = null; } if (response != null) { response.Close(); response = null; } if (thread != null) { //thread.Abort (); thread = null; } lock (this) { frameQueue = null; } }
private void AsyncResponseRetrieved(IAsyncResult asynchronousResult) { Logger.LogInfo("AsyncResponseRetrieved() called."); try { response = (HttpWebResponse)request.EndGetResponse(asynchronousResult); } catch (Exception e) { Logger.LogError("Exception in AsyncResponseRetrieved: " + e); // better to clean up (on the main thread). return; } Logger.LogInfo("response status: [" + response.StatusCode + "]" + response.StatusDescription); Stream stream = response.GetResponseStream(); bstream = new BufferedStream(stream, bufsize); mjpgReader = new MjpegReader2(bstream, OnFrameComplete); thread = new Thread(ReadThread); thread.Priority = System.Threading.ThreadPriority.AboveNormal; thread.Start(); }
private void StartConnection() { var request = HttpWebRequest.Create(url); if (request == null) { Logger.LogError("error! url<" + url + "> is invalid!"); return; } request.Method = "GET"; request.Timeout = 10000; Logger.LogInfo("sync connection start. url: <" + url + ">"); this.request = request; response = (HttpWebResponse)request.GetResponse(); Logger.LogInfo("response: " + response); Stream stream = response.GetResponseStream(); bstream = new BufferedStream(stream, bufsize); mjpgReader = new MjpegReader2(bstream, OnFrameComplete); }