所以我有類似如何在新的單獨線程中從矢量運行每個函數?
typedef boost::function<void(DataType)> Function;
typedef std::vector<Function> FunctionSequence;
typedef typename FunctionSequence::iterator FunctionIterator;
DataType* dataElement;
FunctionSequence funcs;
//...
for (FunctionIterator it(funcs.begin()); it != funcs.end(); ++it){
DataType dataCopy;
dataCopy = *dataElement;
(*it)(dataCopy);
如何使用boost.thread使單獨的新線程或者如果每個向量函數運行其最好有螺紋的載體,這樣不會創建therad每一次?
不知道你是要完成的任務。你能否提供更多細節?你是否試圖在同一個DataType實例上執行每個函數?如果是這樣,函數是否會修改DataType的值?謝謝 – skimobear 2011-02-02 02:31:34