public void DisposeRudely()
{
if (wasDisposed)
return;
DisposeResourcesWhoseDisposalCannotFail();
queueStorage.DisposeRudely();
// only after we finish incoming recieves, and finish processing
// active transactions can we mark it as disposed
wasDisposed = true;
}