pthread 常用 API 创建 销毁 调度 互斥锁 自旋锁 读写锁 条件变量

pthread 常用 API

  • 线程创建,销毁,属性,同步,调度等常用 API。
  • 头文件:pthread.h

线程属性

  • 结构体 pthread_attr_t,用于设置和获取线程的属性。
  • pthread_attr_init:初始化线程属性对象。在使用线程属性对象之前,必须先调用该函数进行初始化。
  • pthread_attr_destroy:销毁线程属性对象。当不再需要使用线程属性对象时,应该调用该函数进行销毁。

线程堆栈大小

  • pthread_attr_setstacksize:设置线程的堆栈大小。
  • pthread_attr_getstacksize:获取线程的堆栈大小。

线程调度

  • pthread_attr_setschedpolicy:设置线程的调度策略。
  • pthread_attr_setschedparam:设置线程的优先级。
  • pthread_attr_setinheritsched:设置线程是否继承父线程的调度属性。
  • pthread_setschedparam:设置线程的调度策略以及优先级。
  • pthread_setschedprio:设置线程的优先级。

线程 CPU 亲和性

  • pthread_attr_setaffinity_np:设置线程 CPU 亲和性。
  • pthread_setaffinity_np:设置线程 CPU 亲和性。

线程名

  • pthread_setname_np: 设置线程名。

获取当前线程标识符

  • pthead_self:获取当前线程描述符。

线程创建以及销毁

  • pthread_create:创建新线程。
  • pthread_join 等待线程结束并回收资源。
  • pthread_detach:将线程设置为分离状态,使其结束后自动释放资源。
  • pthread_cancel:取消线程。
  • pthread_exit:终止当前线程。

线程互斥锁

  • pthread_mutex_init:初始化互斥锁。
  • pthread_mutex_destroy:销毁互斥锁。
  • pthread_mutex_lock:加锁。
  • pthread_mutex_unlock:解锁。

线程自旋锁

  • pthread_spin_init:初始化自旋锁。
  • pthread_spin_destroy:销毁自旋锁。
  • pthread_spin_lock:加锁。
  • pthread_spin_unlock:解锁。

线程读写锁

  • pthread_rwlock_init:初始化读写锁。
  • pthread_rwlock_destroy:销毁读写锁。
  • pthread_rwlock_rdlock:加读锁。
  • pthread_rwlock_rwlock:加写锁。
  • pthread_rwlock_unlock:解锁。

线程条件变量

  • pthread_cond_init:初始化条件变量。
  • pthread_cond_destroy:销毁条件变量。
  • pthread_cond_wait:等待条件变量。
  • pthread_cond_timedwait:在指定时间内等待条件变量。
  • pthread_cond_signal:唤醒等待条件变量的线程。
  • pthread_cond_broadcast:广播唤醒等待条件变量的线程。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

专注的罗哈哈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值