LINUX.ORG.RU

именованные пайпы


0

0

Господа, не подскажете, есть ли функция, которая заставляет процесс ждать, пока к именованному пайпу не подсоединится клиент (аналогично виндовому ConnectNamedPipe)? И вообще, не подскажете, как написать простенький *мультипоточный* (мультипроцессный) неймд-пайп сервер? Пример из "Руководства программиста для Linux" от Sven Goldt'а и компании просьба не предлагать - там все в одном процессе.

С уважением, Денис

anonymous

Re: именованные пайпы

>Пример из "Руководства программиста для Linux" от Sven Goldt'а и компании просьба не предлагать - там все в одном процессе.

а там всё так само только к пайпу ещё надо бривязать мьютекс или файловую блокировку

cvv ★★★★★
()
Ответ на: Re: именованные пайпы от cvv

Re: именованные пайпы

А можно примерчик? К сожалению, совершенно нет времени искать самому :( Пинок в нужном направлении не повредил бы $)

anonymous
()
Ответ на: Re: именованные пайпы от anonymous

Re: именованные пайпы

а чё собственно непонятно???

создаёш/открываеш пайп. ставиш ему в соответствие некоторый мьютекс и пишеш враппер на read /write который периодически поглядывает на мьютекс прежде чем когото пустить к пайпу.

cvv ★★★★★
()

Re: именованные пайпы

open() на FIFO будет ждать подключения, если что. И мьютексы лесом...

anonymous
()
Ответ на: Re: именованные пайпы от NewComer

Re: именованные пайпы

> Работайте с трубой в неблокирующем режиме (O_NONBLOCK) правильная мысль, man select и пара экспериментов могут спасти отца русской демократии

anonymous
()
Ответ на: Re: именованные пайпы от anonymous

Re: именованные пайпы

>> Работайте с трубой в неблокирующем режиме (O_NONBLOCK)

> правильная мысль,

и чего здесь правильного??? ето совсем не тот случай когда nonblock может дать хоть какуюто выгоду кроме усложнения кода.

> man select и пара экспериментов могут спасти отца русской демок

select ему скорее всего не поможет. а если и потребуется то только в следствие кривизны протокола через пайп

а вот пара экспериментов действительно ему помогут

cvv ★★★★★
()
Ответ на: Re: именованные пайпы от idle

Re: именованные пайпы

> то select/poll + POLLHUP|POLLIN

пардон, пардон, заврался.

pipe_poll() выставит POLLHUP только при исчезновении писателей.

мои искренние сорри за вранье :)

idle ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.