1.创建2个线程,线程1输出线程id和自己姓名,线程2输出线程id和自己学号,比较两个线程id是否相等,输出比较的结果。
#include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <unistd.h> //定义线程1运行函数 void* th_fn1(void *arg) //传入void*数值 { printf("线程1: %lx\n",pthread_self()); //以十六进制输出线程1id printf("线程1:张三\n"); return (void*)0; //返回指针 数值0 } //定义线程2运行函数 void* th_fn2(void *arg) //传入void*数值 { printf("线程2: %lx\n",pthread_self()); //以十六进制输出线程2id printf("线程2:541913430301\n"); return (void*)0; //返回指针 数值0 } int main() { int err;//定义错误存储 pthread_t tid1,tid2;//定义线程标识符 //创建tid1线程 if((err=pthread_create(&tid1,NULL, th_fn1,NULL)!=0)) {perror("pthread_create error");} //创建tid2线程 if((err=pthread_create(&tid2,NULL, th_fn2,NULL)!=0)) {perror("pthread_create error");} sleep(1); //比较大小 if (pthread_equal(tid1,tid2)) { printf("线程id一致\n"); } else{ printf("线程id不一致\n"); } return 0; }