subprocess.call on long standing process

时间:2016-08-12 14:14:46

标签: python

我使用subprocess.call运行外部ffmpeg进程,通常需要1小时左右。我看到的是显然在一段时间后(例如20分钟)我的程序关闭而没有从subprocess.call返回。

示例:

import subprocess
try:
  ret = subprocess.call(['ffmpeg', 'param1', 'param2', 'paramN'])
  print(ret)
except:
  print("An exception has occured!") 

永远不会到达print行。

1 个答案:

答案 0 :(得分:0)

您可能内存不足。当系统即将溢出时,Linux开始终止进程​​。它可以杀死父进程而不是有问题的ffmpeg进程。检查dmesg和syslog记录。