Motivation
Allows framework or layer supertype code to acquire offline locks.
Summary
Implementing Implicit Lock is a matter of factoring your code such that any locking mechanics that absolutely cannot be skipped can be carried out by your application framework.
For lack of a better word we'll use "framework" to mean a combination of Layer Supertypes , framework classes, and any other "plumbing" code.
Code generation tools are another avenue to enforce proper locking. I realize this is by no means a ground-breaking idea.
This pattern is well supported by most of enterprise level data access frameworks.
When to Use
Implicit Lock should be used in all but the simplest of applications that have no concept of framework.
References