IT辅导娱乐网| 蜘蛛地图| 所有文章|
关于 wait、notify、notifyAll简单介绍 - IT辅导
  • 首页
  • IT技术 IT辅导资源网设计图
    • DVWA靶场
    • sqli-lab靶场
  • 源码基地
  • 软件分享 IT辅导资源网设计图
    • 辅助软件
  • emlog教程
  • 白嫖活动
  • 网络技巧 IT辅导资源网设计图
    • seo教程
  • 编程教程
  • 值得看一看 IT辅导资源网设计图
    • 值得听一听
    • 读懂世界
    • 活动线报
  • 更多功能 IT辅导资源网设计图
    • 在线投稿
    • 公告动态
    • 广告合作
    • 匿名投稿


登录后,享受更多优质服务哦
IT辅导资源网站长qq头像
欢迎回来,可爱的会员!个人中心退出登录
导航菜单
  • 首页
  • IT技术
    • DVWA靶场
    • sqli-lab靶场
  • 源码基地
  • 软件分享
    • 辅助软件
  • emlog教程
  • 白嫖活动
  • 网络技巧
    • seo教程
  • 编程教程
  • 值得看一看
    • 值得听一听
    • 读懂世界
    • 活动线报
  • 更多功能
    • 在线投稿
    • 公告动态
    • 广告合作
    • 匿名投稿

关于 wait、notify、notifyAll简单介绍

2020/9/19 五年级扛把子 

一:wait、notify、notifyAll简单介绍


    1. 为什么 wait、notify、notifyAll 不是线程对象Thread的方法 

       原因:首先应该明确wait、notify、notifyAll三个方法都是对锁对象的操作,而锁可以是任何对象。在java的世界中任何对象都属于Object类,因此这三个方法都是Object的方法, 而不是线程对象Thread的方法。

     2. 使用方法需要注意两点:
           a.  这三个方法必须在synchronized关键字包含的临界区(简单理解,就是代码块)内使用;

           b. 使用方式为锁对象.方法(),比如obj.wait();


     3. 什么时候加锁、什么时候释放锁?必须明确以下几点:

           a. notify和notifyAll方法不会释放锁,这两个方法只是通知其他使用该锁当锁但是在wait状态的线程,可以准备抢锁了(注:这里还要格外注意一点,其他使用该锁当锁且处于wait状态的线程只有被notify或notifyAll唤醒了,才有资格抢锁)


          b. 某个锁对象调用wait方法会立即释放当前线程的该对象锁 , 且其他线程通过

notify/notifyAll方法通知该线程可以抢该对象锁时,如果当前线程抢到了,会从当前锁的wait方法之后开始执行 — 即从哪里wait,从哪里执行;

          c. 在synchronized、wait、notify、notifyAll的组合里加锁的方式只有一个即进入同步代码块时加锁;


释放锁的方式有两个: ①锁对象调用wait方法时会释放锁 ;② 走完同步代码块时自动释放锁


    4. notify、notifyAll的区别
       a. 某个锁对象的notify只会唤醒一个使用该锁当锁且处于wait状态的线程;
       b. 某个锁对象的notifyAll方法会把所有使用该锁当锁且处于wait状态的线程都唤醒;
   使用建议: 为了防止某些线程无法被通知到,建议都使用notifyAll。

 点赞:0  打赏  分享  海报

  • 打赏支付宝扫一扫
  • 打赏微信扫一扫
  • 打赏企鹅扫一扫
结束语
温馨提醒:如有技术问题以及资源失效请联系站长 QQ89549822 进行反馈!!!
 您阅读本文耗时: 0小时02分35秒
热度:311° 发布时间:2020年9月19日

推荐:

标题:关于 wait、notify、notifyAll简单介绍

链接: https://www.itfd.cn/post-1300.html

版权:转载请注明来源于【IT辅导娱乐网】为原创

上一篇: 什么是网络爬虫技术,网络爬虫的基本工作流程又是什么?

下一篇: 关于Java集合的浅层理解

作者头像 作者名称 作者性别
五年级扛把子
联系作者 作者主页

热门推荐

1 C#运算符大全
2 Python网络爬虫与信息提取讲解
3 4男子买400部手机养抖音号被抓
4 量子互联网要来了?美国政府投入巨资,大力发展量子互联网
5 新手怎么快速学会电脑
6 it,工作空闲,不玩手机的话,你们会做什么

评论列表

取消回复

  • 存档

    • 2020年9月(191)
    • 2020年8月(92)
    • 2020年7月(5)
    • 2020年6月(224)
    • 2020年5月(392)
    • 2020年4月(267)
    • 2020年3月(76)
    • 2019年3月(1)
    • 1970年1月(29)
  • 搜索

  • 热门文章

    • 神佑之路手游源码-附视频教程
    • 最新可用老王VPN2.22.15谷歌市场版,免费使用
    • 私藏的十个网站,不看后悔系列
    • 虚拟商品自动发货商城源码
    • 不吃苦、不奋斗,你要青春做什么?
  • 随机文章

      • 腾讯又一游戏宣布下架《天天斗三国》手游正式宣告停服
        • 腾讯游戏年度发布会 好友助力抽5Q币 18种游戏礼包 代金券等
          • Humble Bundle平台免费领steam《Snake Pass》游戏
            • 歌曲分享:对焦
              • 1秒钟复制百度文库中所有内容
    提示信息

    SQL语句执行错误: SELECT COUNT(*) AS total FROM emlog_twitter
    Table 'itfd.emlog_twitter' doesn't exist

    «点击返回