I have an application which spawns a juce thread to buffer data (using startThread()) . When my buffer is full, I wait until some of the data was processed. I am using the data in the paint method which is being asked to repaint() from the renderOpenGL() method. The issue is that when I wait (or sleep, or use a WaitableEvent.wait) it causes the gui to not update. However, the paint method continues to get called while I am waiting and it is processing data. All of the thread IDs are different (however the thread names (even the open gl one) all have the name I give the thread that I created).
I found an issue with my buffer.