Lock based synchronization provides the following problems
1.Deadlock
2.LiveLock
3.Priority Inversions
4.Caravan Formation
To avoid these problems, we are going for lock free synchronization. AsynchronousProgramming is a typical technique for achieving lock free synchronization.
Example: Android Stagefright is having lock based synchronization mechanism
PV's OpenCORE is having lock free synchronization mechanism