well here is what I have tried with no luck,
semi-psuedo code
Thread 1
-------------------
createDisplay()
createThread2(Display.getDrawable())
Thread2.run()
Thread 2
-----------------------------------
render(Drawable d) //value from Display.getDrawable() in thread 1
GLContext.useContext(d.getContext())
GLContext.useContext(c);
GL11.glClearColor(0,0,0,0);
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);
Display.update()
endRender