|
发表于 2003-4-30 14:57:57
|
显示全部楼层
我看了你在LinuxForum上的帖子,感觉用管道比较好。
不过你最好说清楚程序的要求,每一种技术应用的情况是不同的,比如用管道,在A运行的时候B也运行,A可以通过管道和B通信,这种方法对A、B之间对话比较复杂的情况较适用,如果用fork、exec的方式系统的开销就要大一些,因为每次都要产生一个新进程,但是也有好处,一是模块化程度提高,A只管接受命令,就像一个shell,B只管处理,二是扩展性好,如果以后有新的处理而修改B又太麻烦的话,可以写一个C程序,在稍微修改一下A就行了,三是响应速度快,如果处理时间比较长,比如A输入一个命令传给B需要处理一分钟,这样只用一个B进程的话就会造成这一分钟没法处理新的命令,如果用f-e的话就可以接受连续输入并启动多个B进程进行处理,总之你的程序的要求是选择某种实现技术的基础,A、B之间的接口的复杂程度,A接受输入的平均速度,B进行一次处理的平均速度,资源限制,扩展的要求等等。
呵呵,先把需求分析做好比较重要。 |
|