当前位置: 首页 > news >正文

重庆价格信息网官网辽宁好的百度seo公司

重庆价格信息网官网,辽宁好的百度seo公司,俄语网站建设注意事项,重庆会计之家是谁做的网站线程Ⅱ 🔗接上篇【线程篇Ⅰ】五、线程库 和 线程 id六、同步与互斥 🔗接上篇【线程篇Ⅰ】 👉【Linux】线程篇Ⅰ:线程和task_struct 执行流的理解、相关接口命令、线程异常、线程的私有和共享 五、线程库 和 线程 id 对于 Linux …

线程Ⅱ

  • 🔗接上篇【线程篇Ⅰ】
  • 五、线程库 和 线程 id
  • 六、同步与互斥


🔗接上篇【线程篇Ⅰ】

👉【Linux】线程篇Ⅰ:线程和task_struct 执行流的理解、相关接口命令、线程异常、线程的私有和共享


五、线程库 和 线程 id

对于 Linux 目前实现的 NPTL 实现而言

pthread_t 类型的线程 ID,本质就是一个 进程地址空间 上的一个地址。

线程篇Ⅰ中涉及到的接口,主要是原生系统库的系统级解决方案,虽然在库中实现但是跟语言一样,比语言更靠近底层罢了。而 C++ 其实是对线程库做的封装!!

虽然原生接口效率更高,但是 语言接口 有跨平台性。不确定只在 Linux 下跑的还是推荐使用语言接口。

在这里插入图片描述

另:有如下 线程栈 的理解和应用
在这里插入图片描述

  • 通过更改 寄存器 ebp、esp 就能 切换 线程栈
  • 数据通过 ebp - 偏移量 进行访问或者开辟空间(ebp 是一个相对稳定的位置)
  • 首地址之所以是低地址,是因为栈的扩展方式 和 ebp 开辟空间的方式(如图)。
/*__thread*/ int g_val = 100;void *threadRoutine(void* args)
{string name = static_cast<const char*>(args);int cnt = 5;while(cnt){// 局部变量cout << name << " : " << cnt-- << " : " << hexAddr(pthread_self()) << " &cnt: " << &cnt << endl;// 全局变量cout << name << " g_val: " << g_val++ << ", &g_val: " << &g_val << endl;sleep(1);}return nullptr;
}int main()
{pthread_t t1, t2, t3;pthread_create(&t1, nullptr, threadRoutine, (void*)"thread 1");pthread_create(&t2, nullptr, threadRoutine, (void*)"thread 2"); pthread_join(t1, nullptr);pthread_join(t2, nullptr);return 0
}
  • 线程函数中的 临时变量,储存在 进程地址空间 共享区的 线程库的 线程栈 中,线程各自使用互不影响。

  • 全局变量 储存在主线程的 已初始化数据段,其他新线程访问全局变量访问的是同一个,是并发访问。

  • 前面 声明 __thread (局部存储)字样的全局部变量 ,储存在已初始化数据段,并在产生新线程后,拷贝到 线程库的 线程局部存储段 中,供各自线程使用且互不影响。(由于地址空间的分布规则,全局数据被拷贝后的地址会比原来的地址大很多,如上图示)

      __thread 定义的全局变量 可以应用在:带出某一个函数 被 各个线程调用的次数
    
  • __thread 局部存储 与 static 静态变量 没有关系哦,静态变量被所有线程共享的,存在已初始化数据段。


六、同步与互斥

http://www.jinmujx.cn/news/79315.html

相关文章:

  • 扬州广陵城乡建设局网站池州网络推广
  • 网站后台怎么添加图片网站建设公司排行榜
  • 设计师网站登录入口二级不死域名购买
  • 商丘做网站的公司网络公司起名
  • 电商网站开发教学视频如何推广品牌
  • 微信怎么开通公众号网站seo搜索引擎优化怎么做
  • 哪些网站是做色选机销售的营销型网站建设模板
  • 泰安市住房和城乡建设委员会网站雷神代刷推广网站
  • 上海徐汇网站建设公司网络营销渠道
  • 网站的运行环境万网长春seo关键词排名
  • 北京龙鼎网站建设公司网络营销的营销方式是什么
  • wordpress 修改登录地址白杨seo博客
  • 郑州做网站hnqfu百度指数什么意思
  • 南昌手机网站制作指数基金有哪些
  • 棋牌网站搭建平台seo推广教程seo推广技巧
  • 网站app怎么做编程培训机构
  • 深圳市房地产交易中心官网阜平网站seo
  • 油画网站模板义乌最好的电商培训学校
  • 嘉兴企业网站网上营销模式
  • 做产品宣传网站多少钱怎么申请网站
  • 想接外包做网站网站seo主要是做什么的
  • 新网站上线怎么做seo安卓优化大师旧版本下载
  • 北京 网站建设600游戏推广怎么做引流
  • wordpress注册登录修改密码window优化大师官网
  • 搭建国外网站的步骤app联盟推广平台
  • 记事本做网站怎么改字体颜色百度站长平台工具
  • 唐山网站建设怎么样百度seo收录
  • 征求网站建设优化大师官方下载
  • 武汉最好的网站建设公司优化大师官方下载
  • 上海外贸网站优化教育培训平台