我有一个使用 python 资源模块的脚本(有关信息,请参阅 http://docs.python.org/library/resource.html)。现在我想将此脚本移植到 Windows。是否有任何替代版本(python-docs 将其标记为“仅限 unix”)。 如果没有,是否还有其他解决方法?
我正在使用以下方法/常量:
resource.getrusage(resource.RUSAGE_CHILDREN)
resource.RLIMIT_CPU
谢谢
PS: 我使用的是 python 2.7/3.2
最佳答案
没有好的方法可以对所有“资源”进行通用操作——因此它是一个仅限 Unix 的命令。对于 CPU 速度,您可以使用注册表项来设置进程 ID 限制:
http://technet.microsoft.com/en-us/library/ff384148%28WS.10%29.aspx 正如这里所做的那样: http://code.activestate.com/recipes/286159/
重要:在尝试使用注册表之前备份您的注册表
或者你可以设置线程优先级:
http://msdn.microsoft.com/en-us/library/ms685100%28VS.85%29.aspx 正如这里所做的那样: http://nullege.com/codes/search/win32process.SetThreadPriority
对于其他资源,您必须将类似的 DLL 访问 API 拼凑在一起才能达到预期的效果。您应该首先问自己是否需要这种行为。通常,您可以通过在方便的时候让运行中的线程休眠来限制 CPU 时间,以允许操作系统交换进程,并且内存控制可以有问题地完成以检查数据结构大小。
关于python - 在 Windows 中使用资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11103321/