public void Consume(GetWebPage message) { var content = new WebPageContent { RequestStarted = "Request initiated on thread: " + Thread.CurrentThread.ManagedThreadId, }; var request = WebRequest.Create(message.Url); request.GetResponseAsync()(response => response.GetResponseStream().ReadToEndAsync()(html => { content.Html = html; content.ContentType = response.ContentType; content.RequestCompleted = "Request completed on thread: " + Thread.CurrentThread.ManagedThreadId; message.Reply(content); })); }
public void GetWebPage(GetWebPage getWebPage) { _queue.Enqueue(() => Consume(getWebPage)); }