Как я могу защитить эту переменную от раскрых данных, но не синхронизировать при каждой переменной доступе?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как я могу защитить эту переменную от раскрых данных, но не синхронизировать при каждой переменной доступе?

Сообщение Anonymous »

давайте просто скажем, что у меня есть переменная, к которой будет доступна доступ на протяжении всей моей программы, но она будет установлена ​​только при запуске/инициализации программы. Я знаю, что вообще говоря, если доступ к переменной доступна из более чем одного потока, то она должна быть защищена от раст данных, например, сделать эту переменную атомной или защищать доступ к нему с помощью мутекс. < /P>
namespace Config
{
inline bool bUseBindlessTextures;
}
< /code>
, а затем в рендерере, он сделает: < /p>
if (Config::bUseBindlessTextures) { /* SOMETHING */ }
< /code>
Очень часто, как, возможно, миллионы раз в цикле. Есть ли способ получить доступ к этой переменной из нескольких потоков только для чтения (после того, как она была инициализирована при запуске программы) без синхронизации при каждом доступе (т.е., имея переменную атомную или используя мутекс при каждом доступе)?

Подробнее здесь: https://stackoverflow.com/questions/796 ... -on-each-v
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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