You can use the EP in the thread it was not initialized.
When you initialize the EPs in two different threads is it working for you?
What do you exactly mean by doesn't work? Which part of the code fails exactly?
I was able to figure out what the problem was. The error I was receiving was 0x42, which suggests that the USB hadn't been started yet. It turns out that one thread was hogging the processor, so I needed to add a sleep, so that the other thread would have a chance to initialize correctly. Thanks for the help.