glXMakeCurrent hangs in multithreaded application

I have a multithreaded app that in UNIX that uses a pthread to call the draw routine in a class that updates a drawing area in a display. Each thread updates a different drawing area in a display.
The context for each drawing area is saved away to a member variable. When the thread is activated a call to the draw routine hangs on the call to glXMakeCurrent.

I’m stuck…any clues?

Can anybody elaborate on using XInitThreads(). Once I added this…everything started working

man XInitThreads should do the job.

This simply means you didn’t have done correct synchronization.