The Mutex destructor consists of an assert on the values of several members. However, the Monitor destructor makes the same assertion, but with a lot more useful information in the error message. The Mutex destructor does nothing but get in the way of that more useful Monitor destructor's assertion.