当前位置:嗨网首页>书籍在线阅读

27-其他说明

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

其他说明

Condition 接口包含与 await() 方法类似的其他方法,具体如下。

  • await(long time, TimeUnit unit) :在该方法中,线程将保持休眠状态直到如下情况出现。
    • 被其他线程中断
    • 其他线程在同一个条件上调用 signal() 方法或 signalAll() 方法
    • 等待时间超过了参数指定的时间
    • TimeUnit 类是具有以下常量的枚举: DAYSHOURSMICROSECONDSMILLISECONDSMINUTESNANOSECONDSSECONDS
  • awaitUninterruptibly() :线程调用该方法后只能由 signal() 方法和 signalAll() 方法唤醒,而不能被其他线程中断。
  • awaitUntil(Date date) :在该方法中,线程将保持休眠,直到如下情况出现。
    • 被其他线程中断
    • 其他线程在同一个条件上调用 signal() 方法或 signalAll() 方法
    • 程序执行到参数所指定的时间

你也可以在读写锁 ReadLockWriteLock 上使用条件。