[Linux][C/C++] tid (thread id) を取得する / pthread_createをラップして子スレッドのtidの取得CC++Linuxpthreadtid デバッグ用途にて、pthread がどこのスレッドから作成されたかを調べたいケースがあったので、 tidの取得方法と、pthread_create にて作成された子スレッドのtidを取得する方法を調査した。 基本的に以下の方法にて LD_PRELOAD を利用することを前提にしている。 LD_PRELOADでprintfを後から差し替える - Qiita gettidを使用する gettid は Linux では syscall 経由でしか使用できない様子。以下のようにする。 #include <unistd.h> #include <sys/types.h> #include <sys/syscall.h>