Home | Previous Page | Next Page   Programming for a Multiuser Environment > How Locks Work >

Kinds of Locks

The following table shows the types of locks that Informix database servers support for different situations.

Lock Type
Use
Shared
A shared lock reserves its object for reading only. It prevents the object from changing while the lock remains. More than one program can place a shared lock on the same object. More than one object can read the record while it is locked in shared mode.
Exclusive
An exclusive lock reserves its object for the use of a single program. This lock is used when the program intends to change the object.

You cannot place an exclusive lock where any other kind of lock exists. After you place an exclusive lock, you cannot place another lock on the same object.

Promotable/Update
A promotable (or update) lock establishes the intent to update. You can only place it where no other promotable or exclusive lock exists. You can place promotable locks on records that already have shared locks. When the program is about to change the locked object, you can promote the promotable lock to an exclusive lock, but only if no other locks, including shared locks, are on the record at the time the lock would change from promotable to exclusive. If a shared lock was on the record when the promotable lock was set, you must drop the shared lock before the promotable lock can be promoted to an exclusive lock.
Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]