前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux同步机制 - 多线程开发总结

Linux同步机制 - 多线程开发总结

作者头像
三丰SanFeng
发布2018-01-16 15:58:46
9630
发布2018-01-16 15:58:46
举报
文章被收录于专栏:三丰SanFeng

1 对于CPU开销大的场景,能利用多核,就尽量利用多核(常常自以为某需求的运算量不大,且CPU足够快,就偷懒写个单线程,结果效率很低)

2 使用多线程的时候,默认是加锁的。在加锁保证业务正常的条件下,再考虑优化互斥锁带来的性能损耗

互斥锁 < 读写锁 < 自旋锁 < 无锁(原子操作)

3 减少线程之间的相关性

线程间共享变量 < 线程内变量 < 函数式编程(没有变量)

4 尽量减少锁的粒度

a. 减少加锁的代码段(减少加锁的时间)

b. 分成多个锁,减少竞争(使用细粒度的锁,如MyISAM和InnoDB)

版权声明:本文为博主原创文章,未经博主允许不得转载。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-09-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档