Постоянный IPC между сценарием Bash и C ++

Проблема: Существует приложение C , которое вызывает сценарий Bash каждый раз, когда происходит событие. Также существует приложение C ++ , которому необходимо отслеживать эти события. Приложение C ++ управляется циклом событий select (). Какой самый простой IPC можно было бы реализовать между сценарием Bash и приложением C ++ ?

C Application ---Each time calls Bash script---> Bash application ---???---> C++ Application

Несколько решений, которые пришли мне в голову:

  1. Использовать сетевые сокеты TCP, но это будет означать, что select должен будет обрабатывать события как для прослушивающего, так и для фактического сокетов
  2. Чтобы использовать именованные каналы, но после завершения сценария bash другой конец канала также закрывается

Есть ли что-то более простое, что позволило бы мне использовать только один файловый дескриптор в select ()?

5
задан Hans Solo 16 August 2011 в 17:17
поделиться