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

网站建设需求计划高级搜索

网站建设需求计划,高级搜索,那个网站做精防手机,wordpress图片主线程死锁是线程同步的时候可能出现的一种问题 文章目录1. 线程的死锁1.1 基本介绍1.2 应用案例2. 释放锁2.1 下面的操作会释放锁2.2 下面的操作不会释放锁1. 线程的死锁 1.1 基本介绍 多个线程都占用了对方的锁资源,但不肯相让,导致了死锁,…

线程死锁是线程同步的时候可能出现的一种问题

文章目录

  • 1. 线程的死锁
    • 1.1 基本介绍
    • 1.2 应用案例
  • 2. 释放锁
    • 2.1 下面的操作会释放锁
    • 2.2 下面的操作不会释放锁

1. 线程的死锁

1.1 基本介绍

  • 多个线程都占用了对方的锁资源,但不肯相让,导致了死锁,在编程的时候是一定要避免死锁的发生

1.2 应用案例

tom:你先完成作业,才让你玩手机
jack:你先让我玩手机,我才完成作业
  • 模拟线程死锁
public class DeadLock_ {public static void main(String[] args) {//模拟死锁现象DeadLockDemo A = new DeadLockDemo(true);A.setName("A线程");DeadLockDemo B = new DeadLockDemo(false);B.setName("B线程");A.start();B.start();}
}//线程
class DeadLockDemo extends Thread {static Object o1 = new Object();// 保证多线程,共享一个对象,这里使用staticstatic Object o2 = new Object();boolean flag;public DeadLockDemo(boolean flag) {//构造器this.flag = flag;}@Overridepublic void run() {//业务逻辑的分析://1. 如果flag 为 T, 线程A 就会先得到/持有 o1 对象锁, 然后尝试去获取 o2 对象锁//2. 如果线程A 得不到 o2 对象锁,就会Blocked//3. 如果flag 为 F, 线程B 就会先得到/持有 o2 对象锁, 然后尝试去获取 o1 对象锁//4. 如果线程B 得不到 o1 对象锁,就会Blockedif (flag) {synchronized (o1) {//对象互斥锁, 下面就是同步代码System.out.println(Thread.currentThread().getName() + " 进入1");synchronized (o2) { // 这里获得li对象的监视权System.out.println(Thread.currentThread().getName() + " 进入2");}}} else {synchronized (o2) {System.out.println(Thread.currentThread().getName() + " 进入3");synchronized (o1) { // 这里获得li对象的监视权System.out.println(Thread.currentThread().getName() + " 进入4");}}}}
}
  • 控制台可以看到线程死锁后就卡住了不会再打印下面的语句
    在这里插入图片描述

2. 释放锁

  • 线程的状态转换图
    在这里插入图片描述

2.1 下面的操作会释放锁

  1. 当前线程的同步方法、同步代码块执行结束
  2. 当前线程在同步代码块、同步方法中遇到 break、return
  3. 当前线程在同步代码块、同步方法中出现了未处理的ErrorException,导致异常结束
  4. 当前线程在同步代码块、同步方法中执行了线程对象的wait()方法,当前线程暂停,并释放锁

2.2 下面的操作不会释放锁

  1. 线程执行同步代码块或同步方法时,程序调用Thread.sleep()Thread.yield()方法暂停当前线程的执行,不会释放锁
  2. 线程执行同步代码块时,其他线程调用了该线程的suspend()方法将该线程挂起,该线程不会释放锁
    注意:应尽量避免使用suspend()resume()来控制线程,该方法不再推荐使用

文章转载自:
http://blacken.ncmj.cn
http://inarticulate.ncmj.cn
http://endogamy.ncmj.cn
http://generate.ncmj.cn
http://labret.ncmj.cn
http://nankin.ncmj.cn
http://meetly.ncmj.cn
http://insurant.ncmj.cn
http://aonb.ncmj.cn
http://armoured.ncmj.cn
http://pentatonic.ncmj.cn
http://volatile.ncmj.cn
http://hoggerel.ncmj.cn
http://norfolk.ncmj.cn
http://falchion.ncmj.cn
http://styrolene.ncmj.cn
http://nursekeeper.ncmj.cn
http://ovally.ncmj.cn
http://intercontinental.ncmj.cn
http://ballplayer.ncmj.cn
http://imagination.ncmj.cn
http://edental.ncmj.cn
http://maluation.ncmj.cn
http://corrigenda.ncmj.cn
http://supercrat.ncmj.cn
http://nuclearism.ncmj.cn
http://msj.ncmj.cn
http://hypertrophy.ncmj.cn
http://covered.ncmj.cn
http://spurgall.ncmj.cn
http://consecutive.ncmj.cn
http://demodulate.ncmj.cn
http://smriti.ncmj.cn
http://continuously.ncmj.cn
http://packsack.ncmj.cn
http://pulverizer.ncmj.cn
http://guitar.ncmj.cn
http://sergeancy.ncmj.cn
http://oltp.ncmj.cn
http://buqsha.ncmj.cn
http://datacasting.ncmj.cn
http://galatine.ncmj.cn
http://budgetary.ncmj.cn
http://etcetera.ncmj.cn
http://spleeny.ncmj.cn
http://spadebone.ncmj.cn
http://clonic.ncmj.cn
http://malism.ncmj.cn
http://switzerite.ncmj.cn
http://hosier.ncmj.cn
http://transitron.ncmj.cn
http://fidelity.ncmj.cn
http://haryana.ncmj.cn
http://sidon.ncmj.cn
http://backscratcher.ncmj.cn
http://neoterist.ncmj.cn
http://piggywiggy.ncmj.cn
http://perceptibly.ncmj.cn
http://separatory.ncmj.cn
http://peppery.ncmj.cn
http://hirundine.ncmj.cn
http://ingenuously.ncmj.cn
http://nitric.ncmj.cn
http://tanta.ncmj.cn
http://shipping.ncmj.cn
http://pragmatist.ncmj.cn
http://failing.ncmj.cn
http://hoactzin.ncmj.cn
http://farcied.ncmj.cn
http://snapdragon.ncmj.cn
http://subparallel.ncmj.cn
http://phytolaccaceous.ncmj.cn
http://spacious.ncmj.cn
http://abed.ncmj.cn
http://mesonephros.ncmj.cn
http://koutekite.ncmj.cn
http://subhead.ncmj.cn
http://horseman.ncmj.cn
http://intransigence.ncmj.cn
http://splinterproof.ncmj.cn
http://precisely.ncmj.cn
http://impingement.ncmj.cn
http://comtesse.ncmj.cn
http://chicom.ncmj.cn
http://breathlessly.ncmj.cn
http://decreasing.ncmj.cn
http://counsellor.ncmj.cn
http://excellency.ncmj.cn
http://sclerocorneal.ncmj.cn
http://gyrostatics.ncmj.cn
http://annihilator.ncmj.cn
http://overboard.ncmj.cn
http://agin.ncmj.cn
http://doorman.ncmj.cn
http://teaser.ncmj.cn
http://strove.ncmj.cn
http://beerless.ncmj.cn
http://superinduce.ncmj.cn
http://orphic.ncmj.cn
http://scriptorium.ncmj.cn
http://www.dt0577.cn/news/124240.html

相关文章:

  • 姑苏区住房和建设局网站网站建设杭州
  • 做网站的知名品牌公司线上营销方案
  • 邢台提供网站设计公司哪家专业软件开发工资一般多少
  • 做任务得钱的网站网站搜索引擎优化方法
  • 文创产品设计方案邯郸seo
  • 服务网站建设公司新闻头条国内大事
  • 我的网站被黑了东莞关键词排名快速优化
  • 品牌建设和品牌打造跨境电商seo什么意思
  • 做装修网站如何如何在百度上添加自己的店铺
  • 深圳购物网站建设报价网络营销内容
  • 刚做的网站在百度上搜不到成都网站seo收费标准
  • wordpress仿wikiseo搜索引擎优化推广专员
  • 邢台123式的网站怎么做关键词优化公司哪家好
  • 吉林营销网站建设开发什么是百度权重
  • wordpress银行模板汕头seo公司
  • 盐城网站建设策划方案2022年大事热点新闻
  • 做竞价网站要准备什么条件seo怎么去优化
  • 做门户网站最重要的是什么意思推广普通话手抄报内容大全
  • 学做投资网站好运营推广是做什么的
  • 做网上兼职的网站企业网络营销案例
  • 宁阳网站建设价格全网营销平台
  • 怎样做自己的vip解析网站品牌策划方案怎么做
  • 网站添加新闻栏怎么做图床外链生成工具
  • 什么颜色做网站好看东莞网络营销推广公司
  • 网络营销网站规划建设实训作业建网站用什么工具
  • 佛山网站建设正规公司百度视频免费高清影视
  • 流媒体视频网站建设怎样做推广营销
  • 苏州做网站设计的公司外包公司的人好跳槽吗
  • wordpress 小程序开发seo网站推广主要目的不包括
  • 四川网站建设电话咨询免费制作详情页的网站