Синхронизация данных для чтения
Необходимо ли синхронизировать данные среди нескольких потоков, если потоки данные не изменяют.
К примеру, вопрос отпадает если несколько потоков пытаются изменить одну и ту же переменную:
Выносим обращение к переменной в критическую секцию и используем что-нибудь а-ля мьютекса для корректной записи.
А если потоки только читают данные? Необходимо ли синхронизировать чтение и что случится если этого не делать?
Поправьте меня, если вопрос задан некорректно, заранее спасибо.
Ответы (1 шт):
Синхронизуют всегда с какой-то целью. В случае, когда все только читают данные, то синхронизовывать нужно только при обновлении данных - чтобы полностью обновить данные и потом все читали одно и то же.