在Java中,不能保证线程将按照它们被wait()挂起/阻塞的顺序恢复。wait()方法是Object类的一个方法,它用于使当前线程进入等待状态,直到其他线程调用notify()或notifyAll()方法唤醒它。当多个线程调用wait()方法后,它们会进入一个等待队列,等待被唤醒。
当线程被唤醒时,它们会竞争重新获取锁,但是具体哪个线程会被唤醒是不确定的,取决于操作系统的调度策略。因此,不能保证线程将按照它们被wait()挂起/阻塞的顺序恢复。
如果需要按照特定的顺序恢复线程,可以考虑使用Lock和Condition来实现。Lock接口提供了比synchronized更灵活的锁机制,Condition接口提供了类似wait()和notify()的功能。通过使用多个Condition对象,可以实现按照特定顺序唤醒线程的需求。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云