gpt4 book ai didi

c - 如果我的调度策略是 SCHED_OTHER,使用 setpriority() 有什么影响吗

转载 作者:太空宇宙 更新时间:2023-11-04 10:47:02 25 4
gpt4 key购买 nike

我的调度策略是 SCHED_OTHER。使用 setpriority() 更改 nice 值是否会产生任何影响。当我使用它时,我看不出有什么不同。

最佳答案

<删除>答案是不。在这种情况下,setpriority 不应影响进程。根据文档:http://linux.die.net/man/3/setpriority> 任何使用 SCHED_FIFO 或 SCHED_RR 的进程或线程都不应受到调用 setpriority() 的影响。这不被视为错误。随后恢复为 SCHED_OTHER 的进程的优先级不需要受到此类 setpriority() 调用的影响。

对不起,请仔细阅读 http://man7.org/linux/man-pages/man7/sched.7.html :

SCHED_OTHER: Default Linux time-sharing scheduling SCHED_OTHER can be used at only static priority 0. SCHED_OTHER is the standard Linux time-sharing scheduler that is intended for all threads that do not require the special real-time mechanisms. The thread to run is chosen from the static priority 0 list based on a dynamic priority that is determined only inside this list. The dynamic priority is based on the nice value (set by nice(2), setpriority(2), or sched_setattr(2)) and increased for each time quantum the thread is ready to run, but denied to run by the scheduler. This ensures fair progress among all SCHED_OTHER threads.

因此,线程的动态优先级会受到调用 setpriority 的影响,它会导致调度发生变化(取决于调用中设置的新优先级值)。

关于c - 如果我的调度策略是 SCHED_OTHER,使用 setpriority() 有什么影响吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32719705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com