Multithreading GLFW?

Cocoa has an event queue per thread that can only be accessed from that thread, but the main thread event queue is the one that receives window and input events, and most window and view operations may only be performed on the main thread. Win32 has one event queue per thread and windows are tied at creation to the queue of the thread that created them, but most window operations may be performed on any thread. X11 has a single event queue and both event processing and window operations may be performed on any thread. The limitation imposed by the GLFW documentation is to ensure that programs are portable. This limitation is not enforced, i.e. the library does not try to prevent you from shooting yourself in the foot.

If loading or rendering blocks your program, put it in another thread. Everything you need to render and swap buffers is thread-safe on all platforms for this reason.