Если у меня есть такой функтор ...
class DoStuff {
private:
std::vector < int > numericStuff;
public:
explicit DoStuff (const std::vector <int> &newStuff) : numericStuff (newStuff) {};
int operator () (void) {
int ProcessedStuff = 0;
//...Doing stuff
return ProcessedStuff;
};
};
... теперь, если бы я хотел использовать его как обычно, все, что мне нужно было бы сделать, это ...
//...Vector declared and populated somewhere else
DoStuff stuff (Vector);
int someNumber = stuff();
... и вот, пожалуйста. То, что я хочу сделать, это бросить его в boost :: thread, как это ...
DoStuff stuff (Vector);
boost::thread (stuff);
... а потом воспользуюсь им, но для жизни я не могу понять как. Любая помощь будет оценена.