当前位置: 技术问答>linux和unix
关于有名管道有几个很不明白的地方
来源: 互联网 发布时间:2015-12-09
本文导语: mkfifo好像没有制定生成的fifo文件都多大,那么fifo文件能放多少数据呢。 如果有个进程死循环地向fifo写入实时数据,会出现什么情况? 每写一次就刷掉旧的数据写上新的数据吗?还是数据进行排队,数据...
mkfifo好像没有制定生成的fifo文件都多大,那么fifo文件能放多少数据呢。
如果有个进程死循环地向fifo写入实时数据,会出现什么情况?
每写一次就刷掉旧的数据写上新的数据吗?还是数据进行排队,数据超出文件容量了,排在队首
的数据自动出队,保持队伍的更新?
如果有个进程死循环地向fifo写入实时数据,会出现什么情况?
每写一次就刷掉旧的数据写上新的数据吗?还是数据进行排队,数据超出文件容量了,排在队首
的数据自动出队,保持队伍的更新?
|
问题太多了。我来说几个:
mkfifo好像没有制定生成的fifo文件都多大,那么fifo文件能放多少数据呢。
=============
mkfifo 只是一个通信的管道,好比就是一条光线线,你说她上面能放多少数据?
讨论这个没有意义,它只是一个数据的传输通道而已。
如果有个进程死循环地向fifo写入实时数据,会出现什么情况?
================
一般情况下,读写应该是分工合作的,即如果写入的数据没有及时读出,
那么再次写的时候,可能写入会出错。
每写一次就刷掉旧的数据写上新的数据吗?
================
保证新的数据在数据流上传输,如果缓存不够,应该会覆盖的。
mkfifo好像没有制定生成的fifo文件都多大,那么fifo文件能放多少数据呢。
=============
mkfifo 只是一个通信的管道,好比就是一条光线线,你说她上面能放多少数据?
讨论这个没有意义,它只是一个数据的传输通道而已。
如果有个进程死循环地向fifo写入实时数据,会出现什么情况?
================
一般情况下,读写应该是分工合作的,即如果写入的数据没有及时读出,
那么再次写的时候,可能写入会出错。
每写一次就刷掉旧的数据写上新的数据吗?
================
保证新的数据在数据流上传输,如果缓存不够,应该会覆盖的。