Linux复习:pthread的create和join,detach

本文demo运行在阿里云的服务器,Centos系统

首先复习进程和线程的资源关系。

进程内典型全局资源如下:

1)代码区:这意味着当前进程空间内所有的可见的函数代码,对于每个线程来说,也是可见的

2)静态存储区:全局变量,静态空间

3)动态存储区:堆空间

线程内典型的局部资源:

1)本地栈空间:存放本线程的函数调用栈,函数内部的局部变量等

2)部分寄存器变量:线程下一步要执行代码的指针偏移量

linux下的线程以进程PCB模拟,可以认为是轻量级进程。

int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*star t_routine)(void*), void *arg)    
thread:返回线程ID    
attr:设置线程的属性,attr为NULL表⽰使⽤用默认属性    
start_routine:是个函数地址,线程启动后要执⾏行的函数    
arg:传给线程启动函数的参数 

//返回值:
成功返回0,失败返回错误码

int pthread_join(pthread_t thread, void **value_ptr)
    thread:线程ID
    value_ptr:这个指针指向pthread_exit

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值