Несколько труб в C - PullRequest
       3

Несколько труб в C

2 голосов
/ 13 марта 2011

Я просмотрел интернет, но не смог найти, как сделать тройной или более подключенный канал в C?

Ответы [ 2 ]

0 голосов
/ 13 ноября 2011

Во-первых, вы должны уточнить, чего вы пытаетесь достичь.

Обычный базовый канал определяется только концом чтения и концом записи (P1 -> P2). Однако существует несколько расширений этой концепции:

  • труба "T" с одним концом записи и двумя концами чтения (P1 -> P2 и P3).
  • двунаправленная труба (P1 <-> P2).
  • и т.д.

То, что вы называете «тройным или более соединенным каналом в C», может быть легко реализовано с помощью нескольких базовых каналов. Требуется немного программирования на C, но не так много.

0 голосов
/ 13 марта 2011

Если вы используете какой-либо дистрибутив linux в качестве своей ОС, вы можете использовать POSIX Threads и создавать pipe, fifo или что-то еще.

Вот пример:

http://linuxprograms.wordpress.com/2008/01/23/piping-in-threads/

...