Ruby进程如何限制其CPU使用率?

前端之家收集整理的这篇文章主要介绍了Ruby进程如何限制其CPU使用率?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我希望 Ruby进程不要使用超过15%的cpu.可能吗?怎么样?

解决方法

@H_301_5@ 您可以尝试使用标准核心中的 Process.setrlimit

Sets the resource limit of the process.

这看起来它只是来自C库的setrlimit的包装器,所以它可能只在Unix-ish平台上可用. setrlimit不支持cpu百分比限制,但它确实支持以秒为单位限制cpu时间.

如果你只是试图阻止你的Ruby进程占用整个cpu,那么你可以尝试用Process.setpriority来调整它的优先级,这只是libc setpriority的一个包装器,它可以控制你进程的调度优先级.同样,可用性可能会受到您的平台的限制,但它应该适用于Linux,OSX或任何其他Unix-ish系统.

猜你在找的Ruby相关文章