通知方法如何工作

根据javadoc通知唤醒正在等待此对象监视器的单个线程。 如果任何线程正在等待此对象,则选择其中一个线程被唤醒。 选择是任意的,由实施决定。 线程通过调用其中一个wait方法等待对象的监视器。

我想知道notify如何实现这种行为。 在我读过的许多网站上发送信号但信号在这里意味着什么?

notify是否直接向第一个等待线程发送信号,或者它向线程调度程序发送信号?

它不会将它发送到第一个线程,而是发送给任何等待的线程(但只有一个线程)。

你应该仔细阅读javadoc。

信号也可能是一个坏名字,’通知’更好。 该机制的实际实现对Java程序员是透明的,并且技术实现对于您来说不是必需的….除非您对Java内部感兴趣,然后我建议您检查OpenJDK源代码。