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

网站快速优化排名方法阿里巴巴手工活外发加工网

网站快速优化排名方法,阿里巴巴手工活外发加工网,秦皇岛房产网,在线商标设计死锁的概念 在多线程编程中#xff0c;我们为了防止多线程竞争共享资源而导致数据错乱#xff0c;都会在操作共享资源而导致数据错乱#xff0c;都会在操作共享资源之前加上互斥锁#xff0c;只有成功获得到锁的线程#xff0c;才能操作共享资源#xff0c;获取不到锁的…死锁的概念 在多线程编程中我们为了防止多线程竞争共享资源而导致数据错乱都会在操作共享资源而导致数据错乱都会在操作共享资源之前加上互斥锁只有成功获得到锁的线程才能操作共享资源获取不到锁的线程就只能等待直到锁被释放。 那么当两个线程为了保护两个不同的共享资源而使用了两个互斥锁那么这两个互斥锁应用不当的时候可能会造成两个线程都在等待对方释放锁,在没有外力作用下这些线程会一直相互等待就没有办法继续执行这种情况就是发生了死锁。 什么情况下会产生死锁 死锁只有同时满足以下四个条件才会发生 互斥条件持有并等待条件不可剥夺条件环路等待条件 互斥条件 互斥条件是指多个线程不能同时使用同一个资源。 如果线程A已经持有的资源不能再同时被线程B持有如果线程B请求获取线程A已经占用的资源那线程B只能等待直到线程A释放了资源。 持有并等待条件 持有并等待条件是指当线程A已经持有了资源1又想申请资源2而资源2已经被线程C持有了所以线程A就会处于等待状态但是线程A在等待资源2的同时并不会释放自己已经持有的资源1。 不可剥夺条件 不可剥夺条件是指当线程已经持有了资源在自己使用完之前不能被其他线程获取,线程B如果也想使用此资源则只能在线程A使用完并释放后才能获取。 环路等待条件 环路等待条件指的是在死锁发生的时候两个线程获取资源的顺序构成了环形链。 比如线程A已经持有资源2而想请求资源1线程B已经获取了资源1而想请求资源2这就形成资源请求等待的环形图。 怎么避免死锁问题? 避免死锁问题就只需要破坏其中一个条件就可以最常见的并且可行的就是使用资源有序分配法来破坏环路等待条件。 什么是资源有序分配法呢 线程A和线程B获取资源的顺序要一样当线程A是先尝试获取资源A然后尝试获取资源B的时候线程B同样也是先尝试获取资源A然后尝试获取资源B也就是说线程A和线程B总是以相同的顺序申请自己想要的资源。 我们使用资源有序分配法的方式来修改前面发生死锁的代码我们可以不改动线程A的代码。 我们先要清楚线程A获取资源的顺序它先是获取互斥锁A然后获取互斥锁B。 所以我们只需要将线程B改成以相同顺序的获取资源就可以打破死锁了。 参考链接小林coding
http://www.dnsts.com.cn/news/3849.html

相关文章:

  • wordpress 整站采集网站建设怎么样
  • 南宁设计网站铜川有哪些需要网页设计师的公司
  • 广州海佳网络网站建设公司怎么样专门做网站的科技公司
  • 广州活动网站设计哪有个人免费云服务器
  • 开发一个网站个人网站可以做地方
  • 山西省建设厅勘察设计协会网站网上推广网站
  • 云南省建设厅网站南京重庆网站建设
  • 网站建设的目标及服务对象聚划算网站建设分析
  • seo站群系统邢台企业做网站多少钱
  • 网站建设应遵循哪几项原则旅游网网站建设目的
  • 手机网站设计标准聊城建设银行网站
  • 什么是网站推广?a站
  • 做网站是怎么赚钱大气集团网站
  • 西苑做网站公司前端做网站要会什么
  • 广东网站制作哪家强linux卸载wordpress
  • 怎样免费建企业网站交互设计考研院校
  • 公司网站制作要深圳宝安国际机场
  • 榨油机 东莞网站建设迅虎wordpress开放平台
  • cms网站群管理系统黄页推广服务
  • 商城网站 后台视频推广平台有哪些
  • 北京seo营销公司南阳网站seo
  • 云南工贸网站建设建设银行海门支行网站
  • 桓台县建设局网站wordpress 外观 权限
  • 淮北公司做网站菏泽网站建设菏泽
  • 重庆1000元网站建设网站开发的必要性
  • 公司门户网站项目模版装饰公司做网站怎么收费
  • 中国移动网站备案管理系统wordpress博文模板
  • 佛山网站关键词优化公司有什么可以在线做数学题的网站
  • 网站推广的优点铜陵市网站建设
  • 云南省安宁市建设厅官方网站wordpress SQL 配置