Сообщение 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 — вообще тема для какого-то мутного процессора
вроде так, поправьте если не прав
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 — вообще тема для какого-то мутного процессора
вроде так, поправьте если не прав
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 — вообще тема для какого-то мутного процессора
вроде так, поправьте если не прав