Каковы способы работы с unix fifos с помощью libuv?

У меня есть приложение, которое по каким-то сложным причинам может общаться только с использованием unix fifos (тех, которые созданы через mkfifo)

Как правило, я работаю с ним как с обычным файлом, но, если возможно, я хотел бы иметь возможность использовать его асинхронно.

Я уже использую libuv для других задач в этом же приложении, поэтому мне было интересно, как libuv будет работать с fifos?


person hl037_    schedule 12.09.2016    source источник


Ответы (1)


Вы можете использовать API-интерфейсы uv_fs_*, но обратите внимание, что они действительно блокируют операции, выполняемые в пуле потоков, который по умолчанию имеет размер 4, поэтому убедитесь, что вы подняли его или не ставите в очередь слишком много операций, иначе вы можете остановить его. . См.: http://docs.libuv.org/en/v1.x/threadpool.html#threadpool

person saghul    schedule 13.09.2016