pthread 可否用在 C++ 中?

WorldCreater 2011-12-03 07:45:22
pthread_create(&thread[0], NULL, &ServerSocket::onClientAcceptThread, &clientHandle);


|error: cannot convert ‘void (ServerSocket::*)(int)throw (SocketException)’ to ‘void* (*)(void*)’ for argument ‘3’ to ‘int pthread_create(pthread_t*, const pthread_attr_t*, void* (*)(void*), void*)’|


void ServerSocket::onClientAcceptThread(int clientHandle) throw(SocketException) {}
...全文
151 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
fallening 2011-12-03
  • 打赏
  • 举报
回复
直接用 c++1x 的 <thread>

void f();

std::thread t( f );


见这篇文章: http://feng.free.lc/?p=94
qq120848369 2011-12-03
  • 打赏
  • 举报
回复
提供一个类的static函数或者非成员函数, 将需要操作的类对象作为pthread_create最后一个参数传入.
WorldCreater 2011-12-03
  • 打赏
  • 举报
回复
哦,這倒是没在意。。。我是C++初學者
網上找了下,好象說 pthread 是 c 函數,不能用在 c++ 中,但不确定,所以再問一下
大家都用什麽创建綫程? zthread, boost.thread?
iamnobody 2011-12-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 taodm 的回复:]
楼主可能还没学过C++里指向成员函数的指针不是指针吧。
[/Quote]

成员(不只是函数)指针不能与一般指针转换。详见C++primer
taodm 2011-12-03
  • 打赏
  • 举报
回复
楼主可能还没学过C++里指向成员函数的指针不是指针吧。

65,184

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧