Информация об изменениях

Сообщение Re: Многопоточность в C++ от 03.07.2025 18:03

Изменено 03.07.2025 18:05 пассажир

Re: Многопоточность в C++
Здравствуйте, plusovik, Вы писали:

P>memory_order_seq_cst – указывает на sequential consistent модель

P>memory_order_acquire, memory_order_release, memory_order_acq_rel, memory_order_consume – относятся к модели, основанной на acquire/release семантике
P>memory_order_relaxed – указывает на relaxed-модель

я не очень спец, для меня барьеры не то чтобы открытая книга, но мое скудное понимание такое

memory_order_relaxed — самый простой — это когда синхронизируются данные сами по себе — например int который хранит значение, и НЕЗАВИСИМ от других данных
просто нужна атомарность
memory_order_acquire — для флага что некоторые данные должны быть прочитаны в допустим контейнере ( это гарантирует что запись в контейнер закончена )
memory_order_release — тоже самое что и предыдущий — но только как флаг для записи (или допустим head lock free stack как часть контейнера) ... поэтому они в основном парные

memory_order_consume — вообще тема для какого-то мутного процессора

вроде так, поправьте если не прав
Re: Многопоточность в C++
Здравствуйте, plusovik, Вы писали:

P>memory_order_seq_cst – указывает на sequential consistent модель

P>memory_order_acquire, memory_order_release, memory_order_acq_rel, memory_order_consume – относятся к модели, основанной на acquire/release семантике
P>memory_order_relaxed – указывает на relaxed-модель

я не очень спец, для меня барьеры не то чтобы открытая книга, но мое скудное понимание такое

memory_order_relaxed — самый простой — это когда синхронизируются данные сами по себе — например int который хранит значение, и НЕЗАВИСИМ от других данных и просто нужна атомарность
memory_order_acquire — для флага что некоторые данные должны быть прочитаны в допустим контейнере ( это гарантирует что запись в контейнер закончена )
memory_order_release — тоже самое что и предыдущий — но только как флаг для записи (или допустим head lock free stack как часть контейнера) ... поэтому они в основном парные

memory_order_consume — вообще тема для какого-то мутного процессора

вроде так, поправьте если не прав