在互联网上进行一些调查之后,OpenCV的Videocapture对象似乎不是多线程安全的。我发现的一个建议是延迟线程执行。考虑到omp中多部分的以下示例,我将如何实现这一点,其中我实际上在任何地方都使用相同的Videocapture对象:
#pragma omp parallel{
#pragma omp sections nowait
{
#pragma omp section
{ loadframe }
#pragma omp section
{ loadframe;}
#pragma omp section
{ loadframe }
}
}
答案 0 :(得分:0)
MyClass* mc = new MyClass();
#pragma omp parallel sections
{
#pragma omp section
{
#pragma omp critical
{
mc->myFunc();
}
}
#pragma omp section
{
#pragma omp critical
{
mc->myFunc();
}
}
}