Queues a AsyncConnectionPoolRequest to our queue of requests needing a pooled stream. If an AsyncThread is not created, we create one, and let it process the queued items
private void QueueRequest(AsyncConnectionPoolRequest asyncRequest) { lock(m_QueuedRequests) { m_QueuedRequests.Enqueue(asyncRequest); if (m_AsyncThread == null) { m_AsyncThread = new Thread(new ThreadStart(AsyncThread)); m_AsyncThread.IsBackground = true; m_AsyncThread.Start(); } } }