pthread_create
안녕하세요
현재 aix에서 작업하고 있습니다..
유저레벨 thread class 라이브러리를 간단하게나마 만드려고 하는데 make 도중에 계속 에러가 나오네요..
에러 내용인 즉슨 아래와 같습니다.
"pollThread.cc", line 20.41: 1540-0256 (S) A parameter of type "extern "C" void *(*)(void *)" cannot be initialized with an expression of type "void *(pollThread::*)(void *)".
"pollThread.cc", line 20.41: 1540-1205 (I) The error occurred while converting to parameter 3 of "pthread_create(pthread_t * restrict, const pthread_attr_t * restrict, extern "C" void *(*)(void *), void * restrict)"
pthread_create 함수의 3번째 인자값이 extern "C" void *(*)(void *) 형태의 콜백함수인데 제가 보내는 녀석은 void *(pollThread::*)(void *)라서 컨버팅이 안된다. 정도로 해석하고 있습니다.
현재 쓰레드 클래스가 멤버함수로 콜백함수를 갖고 있고 그 함수가 pthread_create에 콜백함수의 매개변수로 가져가려고 하는데 저런 경우에는 어떤 방법을 사용해야 할까요?
고수님들 도와주세요;;
댓글 달기