Product Information > JADE .NET Developer’s Reference > Chapter 2 - Object Management > Implicit Locking

Implicit Locking

JADE acquires locks implicitly in certain situations.

Whenever a JADE collection is accessed, a shared lock is implicitly acquired on the collection while it is being accessed, if it is not already locked. The implicit shared lock is removed when the access is complete, unless the JADE session is in transaction state or in load state.

When a JADE session is in transaction state, an implicit exclusive or update lock is acquired for any JADE object before it is updated, if it is not yet locked with one of these two types. By default, the implicit lock type is exclusive. However, you can use the JoobContext SetImplicitUpdatingLockType method to specify that update locks should be the default for objects that are implicitly locked; for example:

context.SetImplicitUpdatingLockType(LockType.Update);

The implicit lock type reverts to the default value (exclusive) when the JADE session becomes inactive (that is, when the JADE session is relinquished back to the pool of available sessions).

Implicit lock requests have transaction duration and they use the default timeout value (as specified in the ServerTimeout parameter in the [JadeServer] section of the JADE initialization file).