Java信号量等待空闲对其他线程的影响?
假设我正在管理我的线程池,这样就不会出现饥饿Java信号量等待空闲对其他线程的影响?,java,multithreading,semaphore,Java,Multithreading,Semaphore,假设我正在管理我的线程池,这样就不会出现饥饿 当我使用一个信号量或另一个同步器,并且该信号量导致线程等待指定的事件发生(例如,该信号量释放一个令牌)时,等待的线程(什么也不做)是否仍在与活动线程争夺处理器资源?或者在信号量释放令牌之前,它是否会占用后座资源?等待的线程将进入睡眠状态。它不占用任何处理器时间,即在轮询等待条件为真时不执行忙等待。调度程序只是不考虑它。信号量将在线程再次空闲时显式唤醒线程。关于这一点非常明确: 如果没有可用的许可证,则当前线程将被禁用 线程调度目的和处于休眠状态,直到
当我使用一个信号量或另一个同步器,并且该信号量导致线程等待指定的事件发生(例如,该信号量释放一个令牌)时,等待的线程(什么也不做)是否仍在与活动线程争夺处理器资源?或者在信号量释放令牌之前,它是否会占用后座资源?等待的线程将进入睡眠状态。它不占用任何处理器时间,即在轮询等待条件为真时不执行忙等待。调度程序只是不考虑它。信号量将在线程再次空闲时显式唤醒线程。关于这一点非常明确: 如果没有可用的许可证,则当前线程将被禁用 线程调度目的和处于休眠状态,直到发生以下两种情况之一 发生:[……] 因此,是的,等待线程在许可证可用之前一直处于资源的后座