Originally posted by no-one
lets say you have a DC, right? and then you make two RC's in two threads.

and you have one thread drawing lets say an object, and the other drawing a gui. will this work? yes! why? OpenGL is thread safe.
the current RC is a global state, if windows context switches in the middle of your drawing to the first RC, you're global current RC is still set to that of the first. Context switches can happen at any time and you're rendering depends heavily on which RC is current. What would you do if you context switch between the two rendering threads 5 times before the rendering was done?

thread1 SetMyRCCurrent() //RC 1 is current
thread1 DrawaPolygon() //draw to RC1 - correct
thread2 SetMyRCCurrent() //RC 2 is current
thread1 DrawaPolygon() //draw to RC2 - wrong
thread2 DrawaPolygon() //draw to RC2 - correct
thread2 DrawaPolygon() //draw to RC2 - correct
thread1 DrawaPolygon() //draw to RC2 - wrong
thread2 EndDrawing() //end
thread1 EndDrawing()

look, I don't expect you to understand this if you have never done multi-threading but stop being so much of a know it all.