private static void OnRetransmitMessage(object state) { SendAsyncResult thisPtr = (SendAsyncResult)state; bool completeSelf = false; Exception completionException = null; try { completeSelf = thisPtr.ContinueRetransmission(RetransmitState.WaitCompleted); } catch (Exception e) { if (Fx.IsFatal(e)) { throw; } completionException = e; completeSelf = true; } if (completeSelf) { thisPtr.CompleteAndCleanup(false, completionException); } }