pthread_self()贵吗?

hud*_*dac 1 c c++ performance multithreading ubuntu-12.04

pthread_self()昂贵ubuntu 12.04
它是否使用系统调用?

我想在pthread_self()每次线程写入日志时调用,所以我会知道哪个线程写入日志并在日志中提及它.所有线程都写入同一个日志文件.

Cla*_*dix 5

您可以在此处查看源代码:https://fossies.org/dox/glibc-2.19/pthread__self_8c_source.html

从上面的链接可以看出,pthread_self()返回THREAD_SELF,它被定义为一个简单的汇编movl指令.没有系统调用那里.当然,这是实现定义的.上面的链接指的是glibc库.