Эй У меня есть простой поток на Windows:синтаксического анализа OpenCV рамка между нитями
while (!MainThreadHasFinished) {
cv::Mat frame = (cv::Mat)lpParameter; //Casting try.
cv::imshow("Camera image", (frame)); //Show Img in window
printf("img printed"); //print text to cmd
if (cv::waitKey(1) == 27) // exit this loop when ESC was pressed
break;
}
return 0;
}
Если проблема в том, что я не могу сделать cv::imshow
, это не похоже, что это отливка сорта :: Mat :)
Я создаю нить, как:
DWORD thread_ID;
HANDLE handle_NumberCruncher = CreateThread(
NULL, // default security attributes
0, // use default stack size
NumberCruncher, // thread function name
&frame, // argument to thread function
0, // use default creation flags
&thread_ID); // returns the thread identifier
Я видел несколько ссылок на кастинг на MSDN и стеком, но ничего для этого изображения.
Если это невозможно, тогда вопрос в целом заключается в том, как анализировать данные между потоками. Там, где идея состоит в том, что некоторая обработка изображения может быть выполнена в основном потоке, а затем анализируется на более продвинутый материал, не необходимый для каждого изображения. Без использования глобальных переменных. Поскольку поток может быть на другом процессоре, как пример :)
нитки без замков - pheww. – berak