Хорошо, я знаю, это может показаться довольно глупым (и я боюсь, что это так), но я не вполне доволен ответом, который я дал себе, поэтому я подумал, что стоит того, чтобы его спросили здесь. Я имею дело с упражнением о concurrency (на Java), который выглядит следующим образом
Учитывая решённую диаграмму Судоку, определите, используя фиксированное число потоков, выполняемых одновременно, правильно ли решена карта, т.е. не происходит нарушения канонических правил (число должно появляться внутри его строки, ее столбца, и его блок только один раз).
Теперь мой вопрос: поскольку потоки должны выполнять только "чтение", собирать информацию из диаграммы и разрабатывать их где-то еще, не могли ли они работать, не беспокоясь о concurrency? Состояние диаграммы всегда согласовано, так как не выполняется "запись", поэтому он никогда не менялся.
Не блокируются ли блокировки/синхронизированные блоки/синхронизированные методы тогда и только тогда, когда существует риск потери последовательности ресурсов? Другими словами, правильно ли я понял concurrency?