day08-CurrentThread
获取系统级线程ID,第一次获取后就存起来,不再调用系统函数
1 |
|
thread_local:现代 C++ 关键字每个线程都有自己独立的变量,互不干扰。函数前加
inline,因为它是高频小函数(代码短,调用频繁,要求速度快),内联可以消除函数调用开销。::syscall(SYS_gettid)调用 Linux 内核 → 获取当前线程的系统 ID。static_cast<pid_t>(...)类型安全转换因为syscall返回long,我们要存成int(pid_t就是int)。inline允许多个文件都定义,链接时自动合并成一个,防止多个头文件#include包含,引发重定义问题。
源码地址
CurrentThread.h:https://gitee.com/lpzdinghai/lpzmuduo/blob/master/CurrentThread.h
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.