Mutex is a synchronization technique used for inter-process Synchronization because multiple applications can access the same mutex object. Example: It makes sure that only instance of an application should run at a time.Lock is a basic synchronization technique ensures that one thread does not enter a critical section of code while another thread is in the critical section.