【发布时间】:2014-04-07 16:01:20
【问题描述】:
我正在尝试将命名空间函数传递给 pthread_create,但编译器给了我错误,我用谷歌搜索,在 stackoverflow 中搜索,但我无法解决我的问题:
#include <pthread.h>
#include <iostream>
namespace SBProcThreads
{
void ProcThread(void* defArg)
{
std::cout<<"### :"<<__PRETTY_FUNCTION__<<": ThreadId :"<<(pthread_self())->__sig<<": ###"<<std::endl;
}
}
int main()
{
pthread_t pThreadId;
::pthread_create(&pThreadId,NULL,(void*)&SBProcThreads::ProcThread,NULL);
}
我不想传递任何参数,我什至删除了 void* defArg 并尝试在 ::pthread_create 函数中提供第四个参数,但它仍然给我错误。
【问题讨论】: