TBB parallel_for:为什么 Body::operator() 参数不是常量?
TBB parallel_for: why Body::operator() argument is not const?
英特尔 TBB 开发人员参考中的 page 列出了 parallel_for
模板参数 Body
的要求,其中:
void Body::operator()( Range& range ) const
为什么 Range
参数传递给 operator()
而没有 const
?最好能看到一个必要的示例 and/or 有用。
我认为我们只是试图将要求保持在最低限度,而不是试图猜测人们可能会想出什么样的创意用途。但现在看来 const
用法是实践中唯一的用例。我想出的 parallel_for
最有创意的用法是 tbb::parallel_sort
中的那个,甚至那个也采用了 const Range。
英特尔 TBB 开发人员参考中的 page 列出了 parallel_for
模板参数 Body
的要求,其中:
void Body::operator()( Range& range ) const
为什么 Range
参数传递给 operator()
而没有 const
?最好能看到一个必要的示例 and/or 有用。
我认为我们只是试图将要求保持在最低限度,而不是试图猜测人们可能会想出什么样的创意用途。但现在看来 const
用法是实践中唯一的用例。我想出的 parallel_for
最有创意的用法是 tbb::parallel_sort
中的那个,甚至那个也采用了 const Range。