쓰레드를 돌렸다.
CWinThread *m_thread;
전역으로 선언하고
m_thread = AfxBeginThread(ManageThread, this, THREAD_PRIORITY_NORMAL);
OnThreadStart 버튼 클릭 이벤트에 정의해주고
ManageThread에서 카메라를 통해 입력을 받는데..
입력은 오~ 잘 되네.....
근데 쓰레드를 멈추려고 하니
Unhandled exception at 0x75129617 in OpenCVFaceDetect.exe: Microsoft C++ exception: cv::Exception at memory location 0x053ef580..
이건 머지..
메모리 문제인거 같은데
멈춤 버튼에서 클릭 이벤트가 발생하면
OnThreadStop();
쓰레드를 종료하고
WaitForSingleObject(m_thread->m_hThread, 1000);
쓰레드가 완전히 종료 되길 기다린다..
왜 WaitForSingleObject에서 문제가 발생하지....
OnThreadStart()에서 WaitForSingleObject를 체크해 보면 잘되는데
여기에 사람들이 많이 오는건아니지만
혹시라도 하는 기대에
이글을 보게 된 초고수 형님..
OnBnClickedBtnThread2(void){
if(m_thread) {
OnThreadStop(); // 스레드 종료 후 종료
WaitForSingleObject(m_thread->m_hThread, 1000);
}
}
WaitForSingleObject에서 에러가 발생하는 이유가 먼지..
답을 좀 가르쳐 주시면 우리학교 식사라도..ㅠㅠ
=== 결국 답은 제가 찾았습니다...
쓰레드가 문제가 아니라 카메라에서 인식받을때
IplImage* image에서 메모리 공간이 해지되는 과정에서 발생하였습니다.. ㅠㅠ