private void OnFreeContext(object sender, DisconnectedEventArgs e) { var imp = (HttpClientContext) sender; imp.Cleanup (); if (!imp.EndWhenDone) { imp.Available = true; lock (_contextQueue) _contextQueue.Enqueue(imp); } else { imp.Close (); imp.Available = false; } }