linux下unlink函数的使用

在linux中有句话很实用,“有问题找男人”,这就是man的作用,man里面共有7个章节,这次经过学习,把对unlink的学习经验分享出来。

在linux下有很多很实用的函数,但对于一个具体的linux函数,我们在使用它的时候先是只需要知道这个函数需要包含哪个头文件、函数原型和它的参数、返回值等。

NAME (名字)

   unlink - delete a name and possibly the file it refers to   

 (unlink— 删去unlink指定名字的文件)

SYNOPSIS (大纲)
#include

define mplayer_cmd_fifo “/tmp/mplayer_cmd_fifo” //定义命令命名管道路径

define mplayer_data_fifo “/tmp/mplayer_dat_fifo” //定义数据命名管道路径

int ret;

//删除”/tmp/mplayer_cmd_fifo” 下后残留的mplayer_cmd_fifo
unlink(mplayer_cmd_fifo);

//删除”/tmp/mplayer_dat_fifo”下残留的mplayer_dat_fifo
unlink(mplayer_data_fifo);

ret = mkfifo(mplayer_cmd_fifo, 0777);
if(ret < 0)
{
perror(“mkfifo cmd”);
exit(-1);
}

ret = mkfifo(mplayer_data_fifo, 0777);

if(ret < 0)
{
perror(“mkfifo data”);
exit(-1);
}

bzero(player, sizeof(PLAYER));

这段程序是一个mplayer项目中进程间通信的一部分,创建两个命名管道,但在创建之前要先删除之前运行mplayer遗留下的管道文件,要不然会导致进程与mplayer通信失败,更深层次可以参阅下面这两篇文章,原理我想是一样的,虽然它们说的是ftok,希望对大家有所帮助,也谨记下我自己的学习历程。

原文链接

http://blog.csdn.net/kabar_strider/article/details/5486779

http://www.cnblogs.com/hjslovewcl/archive/2011/03/03/2314344.html

猜你喜欢

转载自blog.csdn.net/KgdYsg/article/details/81062603