java锁在等待唤醒机制中作用
2024-08-29 12:29:30
等待的线程放在线程池wait()、notify()、notifyall()都使用在同步中,因为要对持有监视器(锁)的线程操作。所以要使用在同步中,因为只有同步才具有锁。
为什么这些操作的线程的方法要定义在Object类中呢?
因为这些方法在操作同步线程时,都必须要标识他们所操作的同一把锁.只有同一把锁上的被等待的线程才会被唤醒,才会被同一把锁上的notify()方法唤醒.不可以对不同锁中的线程进行唤醒.也就是说等待和唤醒都必须是同一把锁.而锁可以是任意对象,所以可以被任意对象调用.要是达到任意对象都可以调用的方法,那还是定义在Object类中最好.因为它才是万类之祖.
最新文章
- 在.NET开发面向Oracle数据库的应用程序
- Export GridView Data to Excel. 从GridView导出数据到Excel的奇怪问题解析
- Magicodes.Shop——版本历史
- Address already in use: JVM_Bind<;null>;:80
- 用JSON-server模拟REST API(一) 安装运行
- android onclick onLongClick ontouch dispatchTouchEvent onInterceptTouchEvent
- LeetCode11 Container With Most Water
- vb.net详解MDI窗体操作方法
- 开源原生JavaScript插件-CJPCD(省市区联动)
- HDU 3452 Bonsai(网络流之最小割)
- sqlMetal用法和例子 自定义DBML
- HC-MAC: A Hardware-Constrained Cognitive MAC for Efficient Spectrum Management
- UESTC_温泉旅店 CDOJ 878
- HAMA
- KoaHub.js:使用ES6/7特性开发Node.js框架
- index.js:13 Uncaught TypeError: Cannot read property &#39;split&#39; of undefined
- BZOJ 3027 Sweets 生成函数,容斥
- 豹哥嵌入式讲堂:ARM知识概要杂辑(1)- 内核架构编年史
- Codeforces Round #552 (Div. 3) F. Shovels Shop(dp)
- word20161231