|
|
发表于 2005-11-2 10:41:03
|
显示全部楼层
Post by pank7.yardbird
不会一样的,>把5个相对独立的进程的标准输出同时重定向到了一个文件里,等于说五个进程并发地往一个文件里输入。这个输出和标准输出是不一样的。
而且我仔细看了一下,还不光是顺序,还有重复的输出(就是其中各个进程的输出重复出现了)
在标准输出下是5个子进程的同步是设计好的,结果也是正确的……
有可能就是没有办法解决,算了,直接在程序里写文件输出好了……
其实重定向仅仅是改变文件描述符所指代的地方,就像让你把酒倒在杯子里,而现在让你倒在碗里,除了倒的地方不一样以外好像没有什么区别的!对于将屏幕重定向到一个文件也是如此道理,屏幕作标准输出描述符为1,现在将描述符1指定给一个文件,这个文件仅仅是在这个命令下取代了屏幕的作用,注意仅仅是取代,没有作任何的改变,所以我个人认为应该是一样的。至于说“五个进程并发的往文件中写入数据和往屏幕上写数据不同”这个说法我觉得不对或者说不是很懂,难道不做重定向时五个进程就不是并发的向屏幕写入数据? |
|