This method
determines whether the mutex is free and reacts accordingly:
- If the mutex if free, this operation locks it and
allows the calling task to enter its critical section.
- If the mutex is already locked, this operation
places the calling task on a waiting queue with other blocked tasks.
Signaturevirtual void lock() = 0;