Metaclasses, Concurrency, Switching metaclasses, Thread synchronization, Queuing in concurrent programming