线程的控制

线程控制

POSIX线程库

在上面提到,Linux在内核层面没有专门为线程设计一套系统调用接口,但是在应用层为用户提供了一套原生线程库。

pthread线程库就是应用层的原生线程库:

  • 应用层指的是这个线程库并不是系统接口直接提供的,而是由第三方帮我们提供的
  • 原生指的是大部分Linux系统都会默认带上该线程库
  • 与线程有关的函数构成了一个完整的系列,绝大多数函数的名字都是以”pthread_“打头的
  • 要使用这些函数库,需要包含头文件pthread.h
  • 链接这些线程函数库时,要使用编译器的”-lpthread“选项

错误检查:

  • 传统的一个函数是,成功返回0,错误返回-1,并且对全局变量errno赋值以指示错误
  • 但是pthreads函数出错时并不会设置errno,而是将错误代码通过返回值返回
  • pthreads同样也提供了线程内的errno变量,以支持其他使用errno的代码。对于pthreads函数的错误,建议通过返回值来判定,因为读取返回值要比读取线程内的errno变量开销更小。

线程创建

创建线程的函数为pthread_create


线程的控制
https://tangerine-kitten-lux.netlify.app/线程的控制/
作者
lux
发布于
2025年4月13日
许可协议