Id de uma thread

Ola galera estou com um problema nao sei sei o porque nao mostra o id da minha thread,
alguem pode me ajudar, essa thread e feita em C.

#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
pthread_t thr;

void* funcaothread(void *v) {
  int tid = *(int *) v;
  printf("Thread %d %ld ID = %d.\n", tid,(long)thr, getpid());
}

int main() {
  
  int tid = 1;

  pthread_create(&thr, NULL, funcaothread, (void*) &tid);
  pthread_self(thr, NULL); //aqui mostra o id da thread

  return 0;
}

“Não mostra” porque você não deu oportunidade de mostrar. Que tal dar um fflush (stdout) depois do printf?

(Infelizmente não tenho um Linux aqui para compilar e rodar seu programa corrigido :frowning: )