是否可以建议内核绕过调度程序逻辑立即执行上下文切换到不同的线程?
例如,如果我刚刚创建了一个线程/进程,clone
并且我想立即开始执行它,则立即放弃当前上下文,而不是等待内核下一次重新安排内容。
理想情况下,我正在寻找与thread_switch
Mach 内核上的调用相同的东西。
是否可以建议内核绕过调度程序逻辑立即执行上下文切换到不同的线程?
例如,如果我刚刚创建了一个线程/进程,clone
并且我想立即开始执行它,则立即放弃当前上下文,而不是等待内核下一次重新安排内容。
理想情况下,我正在寻找与thread_switch
Mach 内核上的调用相同的东西。
您不应该尝试控制上下文切换,因为内核可能比您更清楚何时执行此操作。特别是因为上下文切换被认为是一项昂贵的操作(主要是由于缓存失效)。
但是,如果你真的需要强制调度程序循环,你可以使用系统sched_yield()
调用。