Have you tested this on both windows and linux?
It doesn't seem to work for me. When I create the resource in question in a secondary thread, the main thread doesn't render it (I've gone through the code a dozen times now, the rendering logic is correct, just nothing shows up on screen). When I "pre-load" the resource in the main thread, it renders as expected. The main thread just starts a window at the start of the application, and the secondary thread just puts a sf::Context context; in a place where it stays until the thread is shut down (which doesn't happen until the end of the application).
The secondary thread still creates the resources correctly (I've checked with gDebugger), but for some reason when the main thread renders using those resources nothing shows up.