protected override void Dispose(bool disposing)
{
if (_nativeOverlapped != null)
{
Debug.Assert(!disposing, "AsyncRequestContext::Dispose()|Must call ReleasePins() before calling Dispose().");
if (!Environment.HasShutdownStarted || disposing)
{
_boundHandle.FreeNativeOverlapped(_nativeOverlapped);
}
}
base.Dispose(disposing);
}