- 线程基本编程
- 线程创建
pthread_creat(pthread_id , pthread_attr , void*(函数入口) , void *arg )
return 成功(0) 错误(代码)
- 线程终止
pthread_exit(void *status_exit ) //线程主动结束
pthread_cancel(pthread_t tid) //其他线程调用结束该进程
- 回收资源
pthread_join(pthread_t pthread_id, void ** status_exit) //接受线程结束状态
-
线程资源访问
同一进程内访问共享资源,为了能够更好的协调多线程访问公共资源,采用互斥锁和信号量来控制 -> 互斥锁:适用于同时可用资源是唯一的情况
-> 信号量:适用于同时可用资源是多个的情况 -
线程属性
- 绑定属性:Linux中采用"一对一"的线程机制,即一个用户线程对应一个内核线程,通过绑定属性设置能够将内核线程和
- 分离属性:决定一个线程在什么情况下终结自己。非分离状态下,线程结束只能等待Pthread_join()来回收自己的资源。分离状态下,线程结束后立即释放自身资源。
pthread_attr_init() //属性初始化