Подскажите как в следующем коде реализовать прослушивание http запросов не тормозя работу основной программы?
HttpListener listener = new HttpListener();
StringBuilder log = new StringBuilder();
string path;
private async void button1_Click(object sender, EventArgs e)
{
listener.Prefixes.Add("http://localhost:8080/");
listener.Start();
//listener.AuthenticationSchemes = AuthenticationSchemes.Anonymous;
if (listener.IsListening)
{
button1.Enabled = false;
log.Append("Start server...");
richTextBox1.Text= log.ToString();
}
while (true)
try
{
HttpListenerContext request = listener.GetContext();
ThreadPool.QueueUserWorkItem(ProcessRequest, request);
}
catch (HttpListenerException) { break; }
catch (InvalidOperationException) { break; }
}