Windows和Linux中管道之间有何区别?
最佳答案
我知道的一个区别是,Linux下的命名管道是文件系统中的实际条目(您会在目录列表中看到它们的特殊类型),而在Windows上,它们存储在某个神奇的存储库中(它们都可以通过路径“\\。\ pipe \”进行访问。
其次,在Linux中,您可以使用标准文件IO方法,像从其他管道中读取/读取管道一样进行写入/读取。在Windows上,您必须使用Win32 API中特殊的“管道”功能。
我更喜欢linux的方法,因为它使我可以在需要的任何应用程序中使用管道。例如:
mkfifo pipe.wav
decodeMP3 song.mp3 --out pipe.wav &
encodeAVI video.mpeg pipe.wav --out video.avi
这使我可以将MP3解码器的输出直接通过管道传输到视频解码器,而不必先将整个MP3解码为磁盘上的WAV文件。如果您具有双核CPU,这将非常方便,因为这样您可以同时运行两个操作,从而获得不错的速度。
关于language-agnostic - Windows和Linux中管道之间有何区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/192073/