为python进程保留ram

为python进程保留ram,python,windows-7,python-2.7,Python,Windows 7,Python 2.7,我有一个python脚本(用py2exe生成的exe),可以在多台机器上运行。这个Python exe定期做两件事;一个线程编写py文件以供进一步处理,而另一个线程使用pyZmq模块侦听tcp端口。这台机器已经运行了好几天,使用了大约12兆内存 现在问题来了:这些机器还运行3dsmax渲染3dsmax占用系统上所有可用的ram,只为我的脚本保留4Mo的ram。在这种状态下,报告(py文件写入)线程正常运行,但在tcp端口上侦听的线程不再工作(向机器发送消息时不会收到消息) 但是,此python

我有一个python脚本(用py2exe生成的exe),可以在多台机器上运行。这个Python exe定期做两件事;一个线程编写py文件以供进一步处理,而另一个线程使用
pyZmq
模块侦听tcp端口。这台机器已经运行了好几天,使用了大约12兆内存

现在问题来了:这些机器还运行
3dsmax
渲染
3dsmax
占用系统上所有可用的ram,只为我的脚本保留4Mo的ram。在这种状态下,报告(py文件写入)线程正常运行,但在tcp端口上侦听的线程不再工作(向机器发送消息时不会收到消息)

但是,此python exe进程以高优先级运行:

set_nice(psutil.HIGH_PRIORITY_CLASS)
那么,我如何为我的进程保留14Mo的ram,以便其他正在运行的进程都不能占用这个ram呢?还是另一种避免exe将ram“交给”其他进程的方法

谢谢,
Kib

您可以使用Win32调用。我没有看到任何简单的python示例,也没有现成的windows机器,但它可能相对简单

在Python之外,它似乎可以做到这一点,但我无法验证


但总的来说,这是个坏主意。我想你可能有更严重的问题。祝你好运

您认为低可用RAM导致问题的原因可能有一些好的线索?您是否有内存不足错误?除非禁用了虚拟内存页文件,否则这应该不是问题。