Класс jthread в C++20 поддерживает правильную семантику перемещения.C++

Программы на C++. Форум разработчиков
Anonymous
Класс jthread в C++20 поддерживает правильную семантику перемещения.

Сообщение Anonymous »

Я читал книгу "C++20 для программистов: объектно-естественный подход, 3-е издание" и наткнулся на абзац в книге, в котором обсуждаются некоторые особенности std::jthread, а именно:

"Класс jthread также устраняет другие проблемы с потоками. В частности,
jthread поддерживает кооперативную отмену (раздел 17.9), поддерживает
правильную семантику перемещения
и является типом RAII (обсуждаемым в разделе
11.5), который правильно очищает используемые им ресурсы».

Я пытаюсь понять, как std::jthread поддерживает «правильную семантику перемещения».

Оба std::thread и std::jthread поддерживают семантику перемещения, но если точка зрения автора о том, что std::thread не присоединяется после выхода объектов потока из области действия, относится к совместимости с RAII, то, похоже, она попадает в категорию несовместимости с RAII! Может ли кто-нибудь пояснить, что подразумевается под «правильной семантикой перемещения» в этом контексте? Как std::jthread обрабатывает семантику перемещения иначе или более эффективно по сравнению с std::thread?

Подробнее здесь: https://stackoverflow.com/questions/790 ... -semantics

Вернуться в «C++»