Ykt*_*ula 2 c unix ipc file fifo
假设有人在终端中执行以下操作:
echo 'start working' > /etc/.example
当执行此操作时,示例程序将"开始工作".
在UNIX(类似)系统上,如何实现这样的行为,这种行为被称为什么?
Tyl*_*nry 6
有两种通用方法可以做到这一点.
一个是正在写入的文件实际上是程序正在读取的命名管道,并且它从任何其他类型的输入流(例如网络套接字或标准输入)接收"开始工作"字符串.
其他(具体到Linux)是该文件被写入是一个普通的文件,程序监控使用更改文件的inotify(或dnotify在旧系统).当它收到指示文件已更改的inotify事件时,它将读取其内容并获取"开始工作"字符串.
请注意,这两种方法都要求有问题的程序已经在后台运行(并且没有做任何事情).实际上没有办法以这种方式启动程序,除非有例如后台进程负责启动正在执行上述两项操作之一的程序.
归档时间:
16 年,2 月 前
查看次数:
117 次
最近记录: