Типичный случай - транзакция.
Вы начинаете делать большой апдейт, который допустим займет 3 минуты, а в это время кто-то еще пытается изменить. Таблица блокируется на изменение пока не закончится длинная транзакция. А если сделать select ... for update, то таблица залочится даже для селектов.
Редкий случай - альтерация.
Вы изменяете таблицу добавлением или удалением поля, а в этот момент происходит аналитический отчет. В этот момент таблица блокируется.
https://postgrespro.ru/docs/postgrespro/10/explici...