这似乎很容易,但只是想检查这是否得到保证(在 Linux 上)。在满足等待条件之前,线程是否被排除在调度之外?或者线程会被调度,发现它仍在等待并再次 yield(),浪费资源?
我要问的原因是,如果我有 X 个线程正在运行,并且某些线程由于某种原因被阻塞,被阻塞的线程是否会妨碍可运行线程(假设它们具有相同的优先级)?
这似乎很容易,但只是想检查这是否得到保证(在 Linux 上)。在满足等待条件之前,线程是否被排除在调度之外?或者线程会被调度,发现它仍在等待并再次 yield(),浪费资源?
我要问的原因是,如果我有 X 个线程正在运行,并且某些线程由于某种原因被阻塞,被阻塞的线程是否会妨碍可运行线程(假设它们具有相同的优先级)?