pthread

#include<stdio.h>
#include<pthread.h>
#include<string.h>
#include<sys/types.h>
#include<unistd.h>

pthread_t ntid;

void printids(const char *s){
pid_t pid;
pthread_t tid;

pid = getpid();
tid = pthread_self();
printf("%s pid %u tid %u (0x%x)\n",s,(unsigned int)pid,(unsigned int)tid,(unsigned
int)tid);
}

void *thr_fn(void *arg){
sleep(3);
printids("new thread:");
return ((void *)0);
}

int main(){
int err;
err = pthread_create(&ntid,NULL,thr_fn,NULL);
if(err != 0){
printf("can't create thread: %s\n",strerror(err));
return 1;
}
printids("main thread:");
sleep(10);
return 0;
}

原文地址:https://www.cnblogs.com/greencolor/p/2221279.html