2012-04-05 1 views
3

Что необходимо для чтения разделяемой блокировки?Применение общих считываемых замков

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

Пожалуйста, переместите вопрос на любой другой форум, который вам посчитает нужным. Хотя это вопрос, связанный с программированием и теорией ABAP, который я делаю, я предполагаю, что приложения являются общими для всех языки.

Спасибо!

ответ

2

Если вы выполняете сложные и трудоемкие вычисления на основе нескольких наборов данных (например, проводки), вы должны убедиться, что ни один из этих наборов данных не изменился во время работы, иначе расчет может быть неправильным. В большинстве случаев принципы ACID гарантируют это, но иногда этого недостаточно - например, если источник данных настолько велик, что вы должны разбить его на параллельные подзадачи или если вам нужно вызвать некоторую функцию, которая выполняет фиксацию базы данных или отката внутренне. В этом случае изоляции транзакций уже недостаточно, и вам необходимо заблокировать объект на логическом уровне.