Будет ли в C++ оптимизирована копия данных, защищенных мьютексом?C++

Программы на C++. Форум разработчиков
Гость
Будет ли в C++ оптимизирована копия данных, защищенных мьютексом?

Сообщение Гость »


Будет ли в C++ оптимизирована копия данных, защищенных мьютексом?

Я хотел бы сделать снимок защищенных данных и прочитать их вне мьютекса. Будет ли эта копия оптимизирована, и мне придется либо читать исходные защищенные данные внутри мьютекса (плохо для производительности), либо, что еще хуже, читать исходные защищенные данные вне мьютекса (небезопасно)?

Меня больше всего интересует использование встроенных мьютексов C++.

Тема 1

пока (1) { мой_мьютекс.блокировка(); data = ... /* Изменения данных. */ my_mutex.unlock(); ... /* Несвязанные вещи. */ } Тема 2
пока (1) { мой_мьютекс.блокировка(); снимок = данные; /* Сделать снимок защищенных данных. */ my_mutex.unlock(); ... /* Чтение различных вещей в снимке. */ }

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