When a transaction is being executed, the database server places locks on rows to prevent other transactions from interfering with the affected rows. Locks control the amount and types of interference permitted.
SQL Anywhere uses transaction blocking to allow transactions to execute concurrently without interference, or with limited interference. Any transaction can acquire a lock to prevent other concurrent transactions from modifying or even accessing a particular row. This transaction blocking scheme always stops some types of interference. For example, a transaction that is updating a particular row of a table always acquires a lock on that row to ensure that no other transaction can update or delete the same row at the same time.