Я хочу использовать старый добрый FIFO для передачи данных в другую часть мой собственный Приложение iOS. Я посмотрел на dispatch_io_create_with_path, но хочу, чтобы другая сторона могла читать данные с помощью обычного чтения(). Можно ли использовать файл FIFO? как?Возможно ли создать и использовать файл FIFO в iOS? (ObjC)
Я попытался следующий код в Xcode7 ObjC (путь указывает на документы директории + имя файла):
res = mkfifo(path, 0x777);
int fd;
fd = open(path, O_WRONLY);
write(fd, "test", 5);
close(fd);
mkfifo() возвращает 0, но с открытым() терпит неудачу с -1. Интересно, что если я попробую open() с программой «O_RDONLY», так что что-то происходит там.
Почему вы хотите сделать это через файл? Вы посмотрели этот http://stackoverflow.com/questions/13129233/objective-c-manual-array-fifo-queue? Как он отличается от того, что вы хотите/нуждаетесь? – Losiowaty
Не уверен, что это полезно, но поиск файлов FIFO я нашел «Однако он должен быть открыт на обоих концах одновременно, прежде чем вы сможете приступить к выполнению каких-либо операций ввода или вывода. Открытие FIFO для чтения обычно блокирует, пока какой-либо другой процесс не откроет тот же FIFO для записи, и наоборот. – Putz1103
@ Losiowaty Обратите внимание, что я спрашиваю о «другом FIFO». Not First In First Out, но тип файла, поддерживаемый Unix/Linux/Mac OS X. Я хочу передать данные в статическую библиотеку, которая хочет «filePath», фактически не записывая данные в файл. Я не ожидаю поиска() – gheni4