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

学校网站开发的背景芍药居网站建设公司

学校网站开发的背景,芍药居网站建设公司,个人可以做网站导航的网站吗,西安网站建设技术使用Java实现死锁 使用Java实现死锁 学习并发编程的死锁,之前在408的操作系统也学习过相关概念,今天使用Java代码自己实现了一下。 首先了解一下死锁的四个必要条件(发生死锁一定会发生下面四个情况): 互斥&#xf…

  • 使用Java实现死锁

使用Java实现死锁

学习并发编程的死锁,之前在408的操作系统也学习过相关概念,今天使用Java代码自己实现了一下。

首先了解一下死锁的四个必要条件(发生死锁一定会发生下面四个情况):

互斥(Mutual Exclusion): 资源一次只能被一个线程占用。 只有一个叉子或者叉子,不能两个人同时用
持有并等待(Hold and Wait): 线程持有资源的同时,还在等待其他资源。 小明拿着勺子,还在等叉子
不可抢占(No Preemption): 线程持有的资源不能被强行拿走。 勺子被小红拿了,不能抢
循环等待(Circular Wait): 线程形成环状等待。 小明等勺子 -> 小红等叉子 -> 小明等勺子(循环了!)

具体代码如下:

import lombok.extern.slf4j.Slf4j;
@Slf4j
public class DeadLock {public static void main(String[] args) {table table = new table();new Thread(table::eat1, "小兰").start();new Thread(table::eat2, "小明").start();}}
@Slf4j
class table{private final Object spoon = new Object();private final Object fork = new Object();public void eat1(){synchronized (this.fork){try {Thread.sleep(1000);} catch (InterruptedException e) {throw new RuntimeException(e);}log.debug(Thread.currentThread().getName()+"先拿了fork,等待拿spoon");synchronized (this.spoon){log.debug(Thread.currentThread().getName()+"再拿了spoon,正在吃饭");}}}public void eat2(){synchronized(this.spoon){try {Thread.sleep(1000);} catch (InterruptedException e) {throw new RuntimeException(e);}log.debug(Thread.currentThread().getName()+"先拿了spoon,等待拿fork");synchronized (this.fork){log.debug(Thread.currentThread().getName()+"再拿了fork,正在吃饭");}}}
}

文章转载自:

http://AkmrDtmC.gmgnp.cn
http://56Y7Gkla.gmgnp.cn
http://LuLly5m3.gmgnp.cn
http://y5Rx2Rfa.gmgnp.cn
http://7X0sUcmA.gmgnp.cn
http://Y2LNtio3.gmgnp.cn
http://440M2coW.gmgnp.cn
http://VzE9aqiZ.gmgnp.cn
http://eTYc7nM5.gmgnp.cn
http://sbRKEBkO.gmgnp.cn
http://RS3ozkNr.gmgnp.cn
http://Bc0YryGc.gmgnp.cn
http://SkKvYRMI.gmgnp.cn
http://EC3gPHmd.gmgnp.cn
http://LlTL6jCt.gmgnp.cn
http://rzcHXa3K.gmgnp.cn
http://BMtooQUf.gmgnp.cn
http://OK7pOa7u.gmgnp.cn
http://DoGDbhGa.gmgnp.cn
http://disLj8Rk.gmgnp.cn
http://xheRYIjr.gmgnp.cn
http://5uvcWLJE.gmgnp.cn
http://cMZn15FV.gmgnp.cn
http://YkiSTBhl.gmgnp.cn
http://JvzHU7eA.gmgnp.cn
http://OUE9DEFa.gmgnp.cn
http://4p2CLJJb.gmgnp.cn
http://Kin9CHZE.gmgnp.cn
http://YmbYNNLF.gmgnp.cn
http://P7QciCyx.gmgnp.cn
http://www.dtcms.com/wzjs/739649.html

相关文章:

  • 黑龙江住房和城乡建设厅网站首页小清新网站源码
  • 玉田建设局网站吉安工商注册官方网站
  • 西安网站建设排名免费ppt资源网站
  • 西宁市城北区建设网站官网cms
  • 网络管理系统登录白城网站seo
  • 公司网站界面如何设计移动网站建设模板
  • 自己做网站能否赚钱6建设官方网站企业登录
  • python培训机构岳阳seo公司
  • 四川省建设注册资格中心网站wordpress模板最新
  • 做好史志网站建设如何制作橡皮泥 简单
  • 青岛平台网站建设嵌入式开发难学吗
  • 设计门户网站wordpress 树
  • 大鹏新区网站建设二手交易网站怎么做
  • 手机官方网站工地建筑劳务公司招工平台
  • 网站商城建设员招聘信息网络广告公司排名
  • dede企业网站创立一个网站要多少钱
  • 网络哪里能接活做网站莆田有哪几家做网站设计
  • 单位网站建设管理工作总结wordpress导航栏制作教程
  • html移动网站开发摄影设计思路
  • 手机网站尺寸大小网站建设就业前景2017
  • 买域名后 怎么做网站电商拿货平台
  • 做网站预付款 怎么做账哪里做网站需求
  • 《php网站开发》课程资料胖小七网站建设
  • 建立个人网站的步骤有哪些seo自己做网站吗
  • 工信部备案网站苏州网站设计多少钱
  • 天津建设网站需要的费用郑州 发布会
  • mvc做的游戏网站代码wordpress多重查询
  • 网站建设计划书范本php网站的开发背景
  • 网站流量与带宽数码产品网站建设计划书
  • 网站建设的推进方案宁波网站制作怎样