Solaris has a requirement that desctructor can always be called, but
this is incompatible with Darwin as we attempt to free the mutex.