Messages sometimes not send

using Interlocked.Exchange instead of assignment (see http://stackoverflow.com/questions/6928357/using-of-interlocked-exchange-for-updating-of-references-and-int32)