Although I doubt it, is there anyway I can control the order in which static object destructors are called?
I have 2 static objects (in 2 single-tone classes), implemented the same way, the constructor is private, and the only way to get an instance is to call a static member function like this:

static SingleToneClass::Instance() {
	static SingleToneClass rv;
	return rv;
A problem occur when one destructor is called before the other, and for some reason, they are always called in the same order, so is there a way to control this order, or do you have better suggestions for a single tone class implementation?
If not, then I guess I have to redesign things so one of the two classes isn't single tone any more...
thanks in advance.