Un SELECT no bloquea ninguna tabla en PostgreSQL, a menos que desee un bloqueo:
SELECT * FROM tablename FOR UPDATE;
PostgreSQL usa MVCC para minimizar la contención de bloqueo a fin de permitir un rendimiento razonable en entornos multiusuario. Los lectores no entran en conflicto con los escritores ni con otros lectores.