Igal,
Have you seen your issue re-occur? 
I wonder whether implementing this as Synchronized would have taken care of it without having to redo the instance p_Context instance variable?
What performance differences are you seeing?