C语言-线程

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库

相关推荐