Avoid to expose in a public method the lock.

Exposing lock to any other class can bring to deadlocks if it is not
unlocked properly.
All locks should be done by the class itself.