我一直在使用Python的子进程模块使用subprocess.Popen
运行某些进程。我在Mac OS上开发了代码,但现在我在Linux服务器上运行它。在使用我的父子进程的resource.getrusage(RUSAGE_SELF).ru_maxrss
进行内存分析之后,我发现内存分配机制在两个平台上完全不同。
我已经研究过在Mac和Linux下fork的行为差异,但是没有提到这样的事情。
我正在运行这样的循环:
for t in range(1000):
pid = subprocess.Popen([EXECUTABLES, FILNAME])
# execute some commands here
pid.terminate()
pid.wait()
在Mac上:
在Linux上: