等待的线程放在线程池wait()、notify()、notifyall()都使用在同步中,因为要对持有监视器(锁)的线程操作。所以要使用在同步中,因为只有同步才具有锁。

为什么这些操作的线程的方法要定义在Object类中呢?

因为这些方法在操作同步线程时,都必须要标识他们所操作的同一把锁.只有同一把锁上的被等待的线程才会被唤醒,才会被同一把锁上的notify()方法唤醒.不可以对不同锁中的线程进行唤醒.也就是说等待和唤醒都必须是同一把锁.而锁可以是任意对象,所以可以被任意对象调用.要是达到任意对象都可以调用的方法,那还是定义在Object类中最好.因为它才是万类之祖.

最新文章

  1. 在.NET开发面向Oracle数据库的应用程序
  2. Export GridView Data to Excel. 从GridView导出数据到Excel的奇怪问题解析
  3. Magicodes.Shop——版本历史
  4. Address already in use: JVM_Bind<null>:80
  5. 用JSON-server模拟REST API(一) 安装运行
  6. android onclick onLongClick ontouch dispatchTouchEvent onInterceptTouchEvent
  7. LeetCode11 Container With Most Water
  8. vb.net详解MDI窗体操作方法
  9. 开源原生JavaScript插件-CJPCD(省市区联动)
  10. HDU 3452 Bonsai(网络流之最小割)
  11. sqlMetal用法和例子 自定义DBML
  12. HC-MAC: A Hardware-Constrained Cognitive MAC for Efficient Spectrum Management
  13. UESTC_温泉旅店 CDOJ 878
  14. HAMA
  15. KoaHub.js:使用ES6/7特性开发Node.js框架
  16. index.js:13 Uncaught TypeError: Cannot read property 'split' of undefined
  17. BZOJ 3027 Sweets 生成函数,容斥
  18. 豹哥嵌入式讲堂:ARM知识概要杂辑(1)- 内核架构编年史
  19. Codeforces Round #552 (Div. 3) F. Shovels Shop(dp)
  20. word20161231

热门文章

  1. 豆瓣电影 Top 250
  2. 12.double的int方
  3. Pytorch基本变量类型FloatTensor与Variable
  4. 基于C#利用ffmpeg提取视频帧
  5. 内存池技术(UVa 122 Tree on the level)
  6. 实验吧—安全杂项——WP之 你知道他是谁吗?
  7. Comet OJ - Contest #2 简要题解
  8. 下面有关 JAVA 异常类的描述,说法正确的有()
  9. linux日志管理
  10. Object 及toString() 方法的重写