Да, он остается заблокированным, и следующий человек, который попытается заблокировать его, не сможет этого сделать. Кто-то другой (в том же потоке) может впоследствии разблокировать его где-то еще, но трудно проверить правильность вашей программы, когда сбор и выпуск разделены и, следовательно, несколько подвержены ошибкам. Valgrind включает инструмент, который может помочь отследить проблемы, подобные этой и другим, более тонким.
В C ++ это идеальное время для рассмотрения RAII