Как @alexei сказал: Это не имеет ничего общего с двухуровневой или трехуровневой архитектурой. И это вовсе не мертвый замок.
Механизм называется оптимистичный замок - что действительно нет блокировка. Программа должна быть разработана с использованием оптимистической блокировки для объектов, которые вряд ли могут быть изменены более чем одним человеком одновременно. Когда 2 человека меняют его в одно и то же время оптимистичная блокировка препятствует тому, чтобы второй человек переписывал первых лиц, не зная об изменении. Так что это хорошо. Он предотвращает конфликты слиянием. Плохо то, что второй человек должен перезагрузить данные, увидеть изменения и снова сделать собственное изменение - или решил не изменять его сейчас.
Пессимистическая блокировка с другой стороны - настоящая блокировка ресурсов. Человек устанавливает блокировку для объекта, который должен быть изменен. Человек меняет объект и освобождает блокировку. Тем временем ни один другой человек не может редактировать заблокированный объект. Преимущество здесь в том, что второй человек никогда больше не должен выполнять работу, потому что спасение никогда не потерпит неудачу. Но у него также есть недостатки: второй человек должен ждать.Пользователи забывают разблокировать свои ресурсы, когда отправляются на обед или еще хуже, когда отправляются в отпуск. Таким образом, другие пользователи должны иметь возможность разбить эти блокировки или программа должна разорвать их через некоторое время.
Отсутствие блокировки также является стратегией. Если вы делаете что-то с нуля - без каких-либо фреймворков это по умолчанию. Оба человека могут редактировать объект одновременно, как и при оптимистичной блокировке. Тогда первый сохраняет его. Затем второй сохраняет его и перезаписывает первые изменения без какого-либо знания. Это также может быть стратегией, но в большинстве бизнес-процессов это не очень хорошо.
Это вопрос вашего дизайна приложения, который использует механизм блокировки. Или, если ваше ограничение заключается в использовании одного из них, вы должны создать свое приложение, чтобы оно лучше всего работало с ним.
Вы используете классический или RTC? Если вы используете RTC, вы можете попробовать Property RefreshOnActivate – Florian