An object of class CMutex represents a ?mutex? ? a synchronization
object that allows one thread mutually exclusive access to a resource.
Mutexes are useful when only one thread at a time can be allowed to
modify data or some other controlled resource. For example, adding nodes
to a linked list is a process that should only be allowed by one thread
at a time. By using a CMutex object to control the linked list, only
one thread at a time can gain access to the list.