Whenever ACE_XXX_Thread_Mutexes are used, there are 3 fundamental rules to obey:
1. Always make sure the lock is initialized before use;
2. Never put 2 locks each other in memory (false sharing effect);
3. Always verify that the lock is really acquired - use ACE_XXX_GUARD macros;