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

wordpress页面评论岳阳整站优化

wordpress页面评论,岳阳整站优化,网站开发进度计划是什么,商城app官方下载(Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu) 首先是这几种锁的不同与介绍:Mutex锁、读写锁、线程可重入锁。 Mutex读锁 Mutex锁,有加锁状态、未加锁两种状态; [未加锁状态]时,任一线程申请锁后,该锁进入[…

(Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu)

首先是这几种锁的不同与介绍:Mutex锁、读写锁、线程可重入锁。

Mutex读锁

Mutex锁,有加锁状态、未加锁两种状态;
[未加锁状态]时,任一线程申请锁后,该锁进入[加锁状态];
[加锁状态]时,进程内的所有线程再申请锁时均需要等待,需要等该锁释放后,才能再申请到锁;
在这里插入图片描述

RWLock读写锁

ReadWriteMutex读写锁,有加写锁状态、加读锁状态、未加锁三种状态;
[未加锁状态]时,任一线程申请读锁后,该锁进入[加读锁状态];
[未加锁状态]时,任一线程申请写锁后,该锁进入[加写锁状态];
[加读锁状态]时,任一线程申请读锁时,申请返回成功,该锁锁状态不变;
[加读锁状态]时,任一线程申请写锁时,申请等待,需要等该读锁释放后,才能申请到写锁;
[加写锁状态]时,任一线程申请读锁时,申请等待,需要等该读锁释放后,才能申请到读锁;
[加写锁状态]时,任一线程申请写锁时,申请等待,需要等该读锁释放后,才能再申请到写锁;
在这里插入图片描述

ThreadMutex重入线程锁

ThreadMutex锁,有加锁状态、未加锁两种状态;
[未加锁状态]时,任一线程申请锁后,该锁进入[加锁状态];
[加锁状态]时,该申请到锁的线程下,再次申请该锁时,申请返回成功,该锁锁状态不变;
[加锁状态]时,非该申请到锁的线程,申请加锁时,申请等待,需要等该线程锁释放后,才能再申请到锁;
在这里插入图片描述

使用问题

无论Mutex锁,还是读写锁,还是线程锁。
都存在着,当某个状态加锁时,另一个处申请该锁需要等待的情况,
例如Mutex的加锁情况;
例如读写锁的写锁状态时,或者读取状态申请写锁时;
例如线程锁的其它线程申请锁状态时;
只要存在等待另一个锁释放,那么一旦在某些情况下,该锁占用的周期长了,其它hang住的时间就会长,这个对于高并发系统来说就不容易忍受的。

如何设计高并发系统的锁

怎么设计高并发系统呢?
对于使用锁的情况,我觉得核心点还是,快进快出,申请锁可以,快速用完快速归还;
不要持有锁过长;
不要在持有锁的时候做耗时长的事情;
不要在持有锁的时候做IO操作,无论少量还是大量;
不要在持有锁的时候做大量的计算操作;
不要在持有锁的时候做大量的内存申请释放操作;

如果需要计数,可以直接用std::atomic,快进快出,就一个变量的加锁时间,符合上面的要求;
如果需要唯一进入条件的话,也可以用bool型的std::atomic::compare_exchange_strong,来做唯一进入某个处理的限定;
这些方法都是用轻量级的快进快出加锁解锁的atomic来替代不可预期加锁时长的mutex。

所以总体来看,让加锁快进快出,是高并发系统加锁设计的核心。
当然了,如果可以通过数据结构,设计出无锁设计,那也是相当好的,“无招胜有招”。

(Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu)


文章转载自:

http://S8cMTs5C.qqnxh.cn
http://TosXTdPE.qqnxh.cn
http://DxF9kKyS.qqnxh.cn
http://kJF09Kcz.qqnxh.cn
http://z5iWHx0I.qqnxh.cn
http://35FIBnj2.qqnxh.cn
http://aH1sUwiw.qqnxh.cn
http://7YWKKldL.qqnxh.cn
http://O5rtrsnH.qqnxh.cn
http://RFNZKAaz.qqnxh.cn
http://lsVtmPcP.qqnxh.cn
http://cAjbb4HN.qqnxh.cn
http://ELd5oeYB.qqnxh.cn
http://H9LuHwMq.qqnxh.cn
http://3Ixl4ns7.qqnxh.cn
http://zy4WylhR.qqnxh.cn
http://F3BEubWd.qqnxh.cn
http://HS4Wfg6R.qqnxh.cn
http://qlXWK6LY.qqnxh.cn
http://W6Z7uerj.qqnxh.cn
http://gL2WVENL.qqnxh.cn
http://NWvWwuMM.qqnxh.cn
http://P9ERF63R.qqnxh.cn
http://51AcdySv.qqnxh.cn
http://6qzaQhgQ.qqnxh.cn
http://pwfk5Gta.qqnxh.cn
http://eoR3xsVY.qqnxh.cn
http://EK13SIPz.qqnxh.cn
http://2sERrse7.qqnxh.cn
http://cTUTfrnW.qqnxh.cn
http://www.dtcms.com/wzjs/736941.html

相关文章:

  • 枣阳网站建设 枣阳山水数码苏州正规网站制作公司
  • 网站的服务器每年都要续费的吗mdx wordpress
  • 南宁seo站内关键词优化整形网站源码
  • 大连金州代做网站公众号响应式页面怎么写
  • 哈尔滨建站软件广告发布形式有哪几种
  • 微网站设计企业网站建设方式有哪些
  • python做网站 不适合公司企业安全文化内容范本
  • 网站开发女生适合吗企业电子商务网站建设总结
  • 外贸 网站外链交换网站开发需求文档
  • 网站首页如何设计长春建筑网站
  • 公司网站上首页代码模板网络运维app
  • 湖南网站建设 莫道响应式网站开发原则
  • 黑色炫酷灯饰照明科技企业商务网站模板什么网站空间稳定
  • 潮州网站建设ps在线图片编辑
  • 加人引流加人网站怎么做手机网站优点
  • 网站页面改版h5游戏盒子
  • 电影推荐算法 网站开发网店运营策划书
  • 网站推广属于哪些西宁网站运营公司
  • 海城做网站创网保
  • 手机网站seo优化在线crm系统crm
  • 免费建单页网站软文是什么意思
  • 营销型网站建设怎么收费酒水招商网站大全
  • 西安微商城网站建设自己做网站需要备案么
  • wordpress博客备份青岛seo计费
  • 网站开发代码规范公司策划书模板
  • 人工智能设计网站手机端网站开发视频
  • 企业网站建设的制作公司网站结构图
  • 贵阳网站建设贵阳网站建设哪家好兰州网站哪里做
  • 贵港有网站建设的公司吗1688外贸
  • 国外网站翻墙怎么做公司网站建设企业