ios - 是否可以在iOS中创建和使用FIFO文件? (ObjC)

标签 ios objective-c mkfifo

我想使用良好的旧FIFO将数据传递到我自己的 iOS应用程序的另一部分。我查看了dispatch_io_create_with_path,但我希望另一端能够使用普通的read()读取数据。是否可以使用FIFO文件?怎么样?

我在Xcode7 ObjC中尝试了下一个代码(路径指向Documents dir + filename):

res = mkfifo(path, 0x777);

int fd;
fd = open(path, O_WRONLY);
write(fd, "test", 5);
close(fd);

mkfifo()返回0,但open()失败,返回-1。有趣的是,如果我尝试使用带有O_RDONLY的open()程序正在等待,那么那儿正在发生一些事情。

最佳答案

天哪,我不敢相信我在那上面浪费了时间……好吧,这是:
错误出现在“0x777”部分。应为“0777”。修复该问题后-FIFO对我来说很好用(iOS 9.2.1)。

关于ios - 是否可以在iOS中创建和使用FIFO文件? (ObjC),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38231687/

相关文章:

linux - 使用poll()在命名管道上使用O_RDWR

iphone - iOS "Print"或 "Send"图标

ios - Swift iOS - 如果对 Firebase 的网络调用时间过长,如何使用计时器关闭事件指示器

objective-c - 如何使用不同的主键属性更新 RestKit 中的已发布对象?

objective-c - 在 Xcode 中导致链接器错误的 Const 声明

c - 使用open时什么会导致无限循环? (C, UNIX)

ios - 使用 jQuery Mobile 在 iOS 上缓慢滚动

ios - 我怎样才能驳回第一个 vc,第二个 vc 在第一个 vc 上以模态方式呈现

iphone - 在构建表格时如何在 UITableViewController 中显示 View ?

Python 和 FIFO