Onyx supports multiple threads of execution by using the operating system's native threading facilities. Along with threads comes the need for methods of synchronization between threads.