带成员函数的TBB function_node

TBB function_node with member function

本文关键字:function node TBB 成员 函数      更新时间:2023-10-16

想象一下,我有一个类MyClass,想用Intel TBB实现多线程:

class MyClass
{
public:
   tbb::flow::function_node<int, double>* _fnode;
private:
   tbb::flow::graph* _graph;
   double fbody(int inp);
}

是否可以用类成员函数初始化_fnode ?简单的方法行不通:

_fnode = new tbb::flow::function_node<int, double>(*_graph,1,MyClass::fbody)

感谢Jonathan使用std::bind的想法。所以,这个问题的解是:

_fnode = new tbb::flow::function_node<int, double>(*_graph,1,std::bind(&MyClass::fbody, this, std::placeholders::_1));