boost::mutex::scoped_lock
совпадает с boost::unique_lock<mutex>
, и вы можете разблокировать их.Для этого он должен быть заблокирован вашим потоком, иначе вы получите исключение.
Деструктор unique_lock гарантирует, что мьютекс разблокирован во время уничтожения, и поэтому цель использования объекта блокировки - обеспечить это (безопасность исключений), если исключение выдается в любой момент, когда блокировка удерживается.