Вопрос такой: пусть у меня есть класс, внутри каждого экземпляра которого есть собственный объект для синхронизации потоков (семафор, мъютекс, критическая секция и т.п.), которая предохраняет объект от одновременной работы с ним с разных потоков. Должен ли я в деструкторе объекта дожидаться его освобождения?