Python:子进程与 native API

标签 python api subprocess

如果两个选项都可用:使用子进程(例如 hg)调用命令行工具或使用 native python API(例如 Mercurial API),是否存在使用前者更有利的情况?

最佳答案

如果您想执行一些第三方 native 代码,您知道这些代码不稳定并且可能因 segvault 崩溃,那么最好将其作为子进程执行 - 您将能够安全地处理 Python 进程中可能出现的崩溃。

此外,如果您想从长时间运行的 Python 进程中多次调用某些已知会泄漏内存、打开文件或其他资源的代码,那么将其作为子进程运行可能是明智的选择。在这种情况下,每次子进程退出时,操作系统都会为您回收泄漏的内存或其他资源,而不是累积。

关于Python:子进程与 native API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19661874/

相关文章:

javascript - 回调时 stackmob 错误

Javascript 解析 http 响应时出错

新引用现有文件时linux api重命名行为

subprocess - 使用 subprocess.check_output Python 的环境变量

python - 在 python 中稍后杀死线程

python - 创建字典的更优雅代码的提示

python - 阴谋失踪的逆戟鲸

python - Python 中的通配符?

python - 无符号数和有符号数的numpy总和变为 float

multithreading - 防止Ctrl+C打断Golang中的exec.Command