should you cancel the receiver before the sender?  Is there any chance of one blocking waiting for the other.  I suspect it doesn't really matter.