Is their any probleme with boost::thread and inherited functions ?
Here is an example of what doesn't work to me :
Class A {
public:
makeWork() { runThat(); } ;
protected:
virtual runThat(void);
} //A
Class B : public A {
public :
init() { boost::thread(makeWork); }; //v1
init() { boost::thread(boost::bind(B::makeWork)); }; //v2
private :
runThat(void) { printf("foo"); };
}
No way, once makeWork never run, or with boost::bind, boost::ref, boost::function... I have still errors (do I need to post the errors... ?)
That why befor posting any error log, I ask if there are known problems with inheritage and boost::thread ?
Of course I know how to use boost::thread and boost::bind, for example if I had this to B, it works
Class B : public A {
...
public :
init2() { boost::thread(foo); };
private :
foo(void) { printf("foo"); };
...
}
So what ???
In fact, in the real case, B inherit from another class one of my own invention : Singleton<CLASS> no need to explain what it does... maybe the "1 object only" is a problem for boost ?
PS : the docs have very few complete examples, do you preview to extend it ? (usage of thread, bind, function, ref in the same example please) monolithic examples are OK to understand the principle, but not to understand complex usages...