参考资料:
1、在CmakeList里面加入:
## openmp opencv
find_package(OpenMP)
if(OpenMP_CXX_FOUND OR OPENMP_FOUND)
message(STATUS "===========OpenMP module============")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
message(STATUS "OpenMP_INCLUDE_DIRS: ${OpenMP_INCLUDE_DIRS}")
message(STATUS "OpenMP_LIBS: ${OpenMP_LIBS}")
message(STATUS "OpenMP_CXX_FLAGS: ${OpenMP_CXX_FLAGS}")
message(STATUS "OpenMP_C_FLAGS: ${OpenMP_C_FLAGS}")
endif()
2、在forward里面加入:
https://www.cnblogs.com/ybqjymy/p/12357617.html
#include <mutex>
std::mutex m_mutex;
在forward前面加上:std::lock_guard<std::mutex> lg(m_mutex);
3、在本地测试
image_extract_test.cpp
auto testRun=[&](int i){
};
for (int i = 0;i<100;i++){
#pragma omp parallel
#pragma omp sections
{
#pragma omp section
testRun(1);
示例
1、在CmakeList.txt文件中加入:
2、在本地测试情况下加入
3、在forward文件中加入