2 suggestions to implement in all apps:

A.- be selective on what actions cause the lock (i.e. editing) because not all actions should lock the item. So, this can reduce the locking issues to a minimum.

B.- by timeout: if there is no action in the locked item / app (i.e. click, type, edit, etc.) for a while (i.e. 1 minute), simply left and clear the lock automatically.

(I'm supposing the lock is made in items, not in a single entity that controls the whole sync process)