Ruby Building Concurrent Primitives in Ruby without a Queue A Queue isn't always what we want. So, how can we build our own primitives that are still nice and Thread safe? Mutex + ConditionVariable + data