一、pthread线程函数库
1.1 概述
Linux下的线程函数库
Windows下没有
因此使用pthread函数的程序,只能在Linux下运行。
比较:
Qt下,有自己的多线程机制----QThread类下的run函数----子线程入口
函数
而Qt是跨平台的,所以使用QThread类的程序,能在Linux下、Windows
下运行(但注意,是源码级的跨平台,仍然需要在各自的平台下编译)
1.2 查询当前线程的 线程id号
使用pthread_self()函数,返回值为pthread_t类型的 线程id号
1.3 建立子线程的函数
pthread_create()
有4个参数:
1、是线程id的地址,用来保存新建立的 线程id号,因此是 输出参数
2、线程属性,使用默认值NULL即可
3、子线程的入口函数,需要填写1个函数名。 函数名可以任意,如
run,但参数必须是void *,返回值类型也必须是void *
1.4 线程同步----使用mutex互斥量
使用步骤:
1、定义1个全局变量mutex,并赋值
pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER;
2