繁体   English   中英

为什么Java Processbuilder运行命令的速度比Python Subprocess慢4000倍

[英]why is Java Processbuilder 4000 times slower at running commands then Python Subprocess.check_output

我试图使用Java processbuilder为第三方C工具编写包装。 我需要运行此流程生成器数百万次。 但是,我发现速度有些奇怪。

我已经有一个用于python的第三方工具C工具的包装器。 在python中,包装器使用python subprocess.check_output。

因此,我使用相同的命令运行了Java包装器10000次。 另外,使用相同的命令运行python包装器10000次。

使用python,我的10000个测试在大约0.01秒内运行。

使用java processbuilder,它运行了40秒。

有人可以解释为什么我在两种语言之间的速度差异越来越大吗?

您可以使用“ time”之类的简单命令尝试此实验。

看来python不会产生子进程。 这就是为什么它更快。

对不起,我感到困惑。

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM