文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>[Linux网络编程学习笔记]FIFO的创建和使用

[Linux网络编程学习笔记]FIFO的创建和使用

时间:2011-05-10  来源:涵曦

管道只能用于在同一祖父进程创建的进程间进行通信,FIFO(先进先出)类似于管道,也只能单向传递数据流。不过每个FIFO都有一个路径名与之关联,这就允许无亲缘关系的进程间可以实现通信。FIFO也称有名管道。

FIFO由mkfifo函数创建。

#include <sys/types.h>

#include <sys/stat.h>

int mkfifo(const char *pathname, mode_t mode);

如果只是打开一个FIFO而不是创建新的FIFO,那么就可以调用open()函数实现。

FIFO是先进先出模式,对它的读总是从开头来读,写总是被添加到末尾。且不能对它进行lseek操作。

1.用FIFO实现多客户服务

2.系统对管道和FIFO的限制

(1)一个进程在同一时刻所能打开的描述符的最大数目为OPEN_MAX

(2)可写进管道或FIFO的最大数据量PIPE_BUF

通过sysconf函数可以获得OPEN_MAX的值(在shell中通过limit命令可以修改它的值),而PIPE_BUF的值定义在limits.h头文件中,它的值在运行中通过调用pathconf或fpathconf取得。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载