fengjing81 2019-11-03
线程c程序同时执行很多任务,与进程相比较,代码量小,执行速度快
每次执行线程函数都需要检查错误调用error函数
1.如何调用线程?
线程函数的返回类型为void *
需要pthread.h头文件支持
创建线程:
pthread_t xxx; pthread_create(&xxx, NULL, 执行的函数名, NULL)
回收线程
void * xxxx; pthread_join(线程名字, &xxxx)
用来防止线程同时调用相同变量,需要建立互斥锁
创建互斥锁:
pthread_mutex_t xxx=PTHREAD_MUTEX_INITIALIZER
使用互斥锁
pthread_mutex_lock(&xxx);
打开互斥锁
pthread_mutex_unlock(&xxx);
当使用了pthread.h头文件后,gcc对源码的编译需要加入-lpthread参数连接pthread库