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

LockSupport.park 与 Object.wait 的方法的区别?

LockSupport.park()与Object.wait()的核心区别是是否依赖锁对象:park()是无锁阻塞,不依赖任何对象;wait()必须在synchronized代码块中调用,强制依赖锁对象。

具体差异主要有四点:

  1. 使用前提:wait()必须在同步代码块(synchronized修饰)中调用,否则抛IllegalMonitorStateException;park()无任何前提,可在任意地方调用。

  2. 唤醒方式:wait()需通过对应锁对象的notify()/notifyAll()唤醒;park()需通过LockSupport.unpark(Thread)主动给线程“许可”唤醒。

  3. 锁释放行为:wait()调用时会主动释放持有的锁对象,让其他线程有机会获取;park()阻塞时不释放任何锁(本身也不持有锁)。

  4. 中断响应:两者被中断都会抛出InterruptedException,但park()被中断后不清除中断状态,wait()会清除中断状态。

http://www.dtcms.com/a/458708.html

相关文章:

  • 广东建设信息公开网站中学网站管理系统下载
  • 用rem做移动网站开发微信小程序收费
  • ORB_SLAM2原理及代码解析:Tracking::NeedNewKeyFrame() Tracking::CreateNewKeyFrame()函数
  • 医院网站云服务器配置做网站前两个月应该干什么
  • php网站建设与管理网上商城系统平台官网
  • 江苏山海连云建设有限公司网站长沙seo霸屏
  • 进一步加大网站集约化建设力度微信小程序与wordpress
  • 建立网站 要怎么做wordpress恶意注册
  • 网站建设项目工作分解四川做网站的公司
  • 工信部网站备案号查询如何做deal网站推广
  • 网站改版降权上海公司网站建设
  • jdbc简单封装
  • 永宝网站建设招聘信息芜湖做网站的客户
  • BGP 状态机与报文类型详解
  • 桐庐县住房和城乡建设局网站没有网站可以icp备案
  • 免费推广网站排行榜ui视觉设计常用软件是什么
  • 便捷的大连网站建设专业网站建设官网
  • npm 扩展Vite、Element-plus 、Windcss、Vue Router
  • 程序员和网站建设妇联 网站建设情况
  • 食品网站制作点击图片直接进入网站怎么做
  • 酒店网站建设江苏省和城乡建设门户网站
  • 上海做网站的故事哪家好陕西省建设厅人力资源网站
  • 专业网站设计软件工具wordpress 插件本地化
  • 西宁集团网站建设潍坊网站建设推广公司
  • Echarts饼图示例
  • 力扣刷题——二叉树相同的树
  • 上海奉贤网站建设免费二维码制作生成器
  • 株洲企业网站建设工作网站建设一般预付比例多少
  • 嵌入式 Linux(以泰山派为例)忘记 SSH 密码怎么办?无需重装系统的重置方案
  • 餐饮行业做网站的数据广州网站建设广州网络推广公司排名