A mutex (also called a lock) is used for mutual exclusion of access to a shared resource between components that run in parallel.
In a Go context, if separate goroutines for example need access to some shared data, the access must be coordinated by a lock, to ensure that the data does not get corrupted.