[我们有一个Python命令行实用程序,可以通过API调用来下载大文件,我们希望了解该程序在内存有限(〜1 GB或更少)的计算机上运行时的行为。
一种选择是使用虚拟化层(Docker容器或Vagrant虚拟盒)来创建具有指定内存量的OS。但是我对另一种方法感兴趣。
[我想知道是否有一种方法可以限制Python进程可用的内存量,以便我可以运行命令行界面进行API调用,但将其限制为最大(例如)512 MB内存以测试内存不足问题。
正在寻找适用于Mac OS X(运行10.14+)或Linux的解决方案。
如果您真的想在Python本身中执行此操作,则可以尝试看看resource doc,它具有使用setrlimit()
设置那里列出的资源限制的方法,其中的内存就是其中之一。不确定是否有帮助。