1 线程使用方法
pthread_create用于创建一个线程,pthread_join用于等待线程执行完毕,简单应用如下:
#include<stdio.h>
#include<pthread.h>
#include<stdlib.h>
void tid_1(){
printf("I am tid 1!\n");
sleep(1);
return;
}
void tid_2(){
printf("I am tid 2!\n");
sleep(2);
return;
}
int main(int argc, char *argv[]){
pthread_t tid1, tid2;
if(pthread_create(&tid1, NULL, (void *)&tid_1, NULL) || pthread_create(&tid2, NULL, (void *)&tid_2, NULL)){
printf("pthread_create error!\n");
exit(-1);
}
pthread_join(tid1, NULL);
pthread_join(tid2, NULL);
return 0;
}
编译执行后的结果如下:
那么问题出现了,在操作系统中,线程是执行的最小单位,进程是资源分配的最小单位,而栈资源是内存资源的一种,按理说线程