TBB function_node 具有成员函数

TBB function_node with member function

想象一下,我有一个 class MyClass 并且想使用 Intel TBB 实现多线程:

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

是否可以用class成员函数初始化_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));