在posix线程化(pthread)linux程序的基本进程中,子线程执行代码(某些共享的可重入)。要进行调试,需要打印标识符以知道谁在执行一行代码(基本进程或线程)。怎么做?
最佳答案
使用gettid():
#include <sys/types.h>
pid_t gettid(void);
gettid()返回调用者的线程ID(TID)。在单线程进程中,线程ID等于进程ID(由getpid(2)返回的PID)。在多线程进程中,所有线程都有相同的PID,但是每个线程都有唯一的TID。
关于c - Posix线程程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59006432/