c – Boost单元测试是否可以多线程?

我的单元测试需要运行很多BOOST_CHECK_CLOSE调用,这需要很长时间(就我所知,在一个线程上).我希望能够沿着这些方向做点什么:

#pragma omp parallel for num_threads(8)
for (int i=0; i<ARRAY_SIZE; i++) {
    BOOST_CHECK_CLOSE(array1[i], array2[i], tolerance);
}

然而,当我尝试这个时,一些非常讨厌的内存腐败似乎发生了.最常见的是段落错误,但有时这样做:

*** stack smashing detected ***

有没有人有一些实现我可以分享的预期结果的好方法的经验?我相信每个人都会欣赏他们的测试快速运行!

最佳答案 它不能在这里提到(第3项)

http://www.boost.org/doc/libs/1_57_0/libs/test/doc/html/open-issues.html

请参阅此处的完整讨论:

Is there a way to run C++ Unit Tests tests in parallel?

点赞