我有3-5 (大型-ish)程序,我需要合并,以便它们按顺序运行。速度是重要的,因为这是为(接近)实时应用程序.(如果有更好的方法,请告诉我)。
编写一个Bash脚本来调用这些其他程序还是编写一个非常可能使用fork()和/或exec()的C程序更有意义吗?编码的速度和难度/时间之间的权衡是否有利于一个而另一个呢?还有其他方法需要我去研究吗?
如果我的术语不正确,或者没有足够的信息,我很抱歉。此外,请纠正我,使我不再重复同样的错误在未来。
发布于 2014-07-04 05:05:48
这是bash的完美用例。开销将小于1毫秒,而且维护成本比C程序低得多。
发布于 2014-07-04 05:09:35
我建议编写bash脚本并进行调试。如果表演证明足够,你就完蛋了。在现代系统(硬件和内核)上期望bash表现良好是合理的。
否则,使用bash脚本作为编写替换C程序的规范。
发布于 2014-07-04 05:19:17
提出的问题是的一个经典问题:“工作的正确工具是什么?”。显然,bash是一个shell,用于启动应用程序,编写启动多个程序的脚本非常简单,只需在单独的行中列出所需的程序以及所需的参数。但是,当问题是速度问题时,你只能通过问“多快够快?”来回答这个问题。
如果你现在有独立的程序,你可以把它们串在一起,他们可以在可接受的时间内完成工作,你为什么要考虑重新编写它们以加快速度呢?你问问题的事实表明,你要么(a)对完成当前例程所需的时间有困难,要么(b)你只是想看看你能多快地完成它。我们都喜欢热棒对吧?
用C这样的编译语言重写大型shell应用程序有速度上的优势吗?你说得对。很多次都是百分之几百,但重写所花费的时间值得吗?只有你才能回答。
https://stackoverflow.com/questions/24566915
复制相似问题