This exception can be thrown if queue is already destroyed but you try to call its put method. Check this by putting a breakpoint (or print statement) in queue destructor.
It is not destroyed since it is an object as attribute in a singleton class. True you did not knew that. I added a lot more information in my post.
– TheSquad Oct 30 at 19:02 @Andy T: Would it really throw an exception? I guess it would rather segfault. – Atmocreations Nov 4 at 19:24 @Atmocreations If the boost::mutex code detect an invalid state it may throw an exception.
The object address may still be valid addresses mapped to the process even after the object has been deleted. If this is the case, no seg-fault will occur. – selalerer Nov 5 at 15:30 @TheSquad Maybe you overrun _mysql somewhere and it returns an invalid address, while using get_instance() keep getting you the right address.
– selalerer Nov 5 at 15:36 @selalerer : The thing is the MySQL object is only created on the main. Cc with a create_instance(io_service), get_instance() will only return the instance created by create_instance. Since It is only called in the main.Cc (I have checked to see if I had not put it anywhere else) it can't be overrun.
– TheSquad Nov 5 at 22:38.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.