For select and readtext commands, incompatible locks are exclusive locks. Therefore, select and readpast commands can access any rows or pages on which shared or update locks are held.
For delete, update, and writetext commands, any type of page or row lock is incompatible, so that:
All rows with shared, update, or exclusive row locks are skipped in datarows-locked tables, and
All pages with shared, update, or exclusive locks are skipped in datapages-locked tables.
All commands specifying readpast are blocked if there is an exclusive table lock, except select commands executed at transaction isolation level 0.