混合锁 = 用户模式锁 + 内核模式锁
Thread.Sleep(1) 让线程休眠1ms
Thread.Sleep(0) 让线程放弃当前的时间片,让本线程更高或者同等线程得到时间片运行。
Thread.Yield() 让线程立即放弃当前的时间片,可以让更低级别的线程得到运行,当其他 thread时间片用完,本thread再度唤醒。。。
Yield < Sleep(0) < Sleep(1)
一个时间片 = 30ms。。
混合锁、线程休眠、时间片、Thread.Sleep、Thread.Yield
混合锁结合用户模式锁和内核模式锁,通过Thread.Sleep(1)、Thread.Sleep(0)和Thread.Yield()控制线程休眠和时间片分配,优化线程调度效率。