I am creating a thread from a static lib, and passing in a thread proc from a dynamic lib. The problem I am having is that the interrupt does not work - join just hangs on the call to WaitForMultipleObjects from within thread.cpp.
 
I can get interrupt to work if my thread proc is from a static lib, but I cannot get it to work if my thread proc is from a dynamic lib. I notice when I step into:
    bool interruptible_wait() the call if(get_current_thread_data()&&get_current_thread_data()->interruption_enabled) is always false.
When I call bool chkInterruptEnabled = boost::this_thread::interruption_enabled(); from within my thread proc it is true from the static lib but false from the dynamic lib. 
 
I am using VS2005 sp1 and 1_36
 
Any help is greatly appreciated.