为了账号安全,请及时绑定邮箱和手机立即绑定

C++ 中获取子线程id是什么函数?

C++ 中获取子线程id是什么函数?

繁花不似锦 2019-02-06 10:07:40
我知道pid_t pid = getpid();是主线程id,pthread_t tid = pthread_self();是返回一个和每个线程绑定的数字,但貌似不是子线程id,我linux下ps -eLf得到的线程显然和其不一样。
查看完整描述

3 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

pthread_create 的第一个参数就是线程id。
pthread_self 的返回值和pthread_create的第一个返回参数的值是一样的

你要的线程id就是通过这两个函数获取的。

看一下linux下的帮助吧 man pthread_self 至于为什么ps -eLf 的线程id对不上,这个我不太清楚。但可以肯定的是,你用的接口应该是对的。

查看完整回答
反对 回复 2019-03-27
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

attr_t _attr ;pthread_attr_init(&_attr) ; //设置一下线程属性
pthread_create(&thread_id, &_attr, stat_thread, (void*)p) ; //创建线程时子线程的id会回填到thread_id
//线程实例void* stat_thread(void* thread_param){...}

查看完整回答
反对 回复 2019-03-27
  • 3 回答
  • 0 关注
  • 2621 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信