URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 219
[ Назад ]

Исходное сообщение
"чтение из pipe"

Отправлено roma , 24-Окт-01 21:41 
создаю канал. форкаю процесс. родителем пишу туда строки, а потомком пытаюсь считать.
Но после считывания первой строки потомок зависает в while. (while ждет определенной строки, чтобы завершить потомка, но строка-то всего одна считывается...).
В чема может быть проблема? Возможно что-то с O_NDELAY?
Если проблема неочевидна, могу записать кусок кода.
Спасибо.

Содержание

Сообщения в этом обсуждении
"RE: чтение из pipe"
Отправлено XMan , 25-Окт-01 00:27 
Давай код или сюда или на мыло.

"RE: чтение из pipe"
Отправлено roma , 25-Окт-01 17:37 
вроде удалось.
с помощью select.



"RE: чтение из pipe"
Отправлено Солнышко , 30-Окт-01 14:10 
А поподробнее можно? Мне надо из родительского процесса в дочерний данные передать. Родительский написан на c++, дочерний на Perl. За код на c++ я уверен. Код на Perl порождает кучу процессов и может завесить систему. Что делать?

С уважением



"RE: чтение из pipe"
Отправлено roma , 30-Окт-01 14:28 
я на Си писал... Селектом смарел есть ли в пайпе чего "почитать" и читал read'ом.

man select



"RE: чтение из pipe"
Отправлено Pike , 02-Ноя-01 17:42 
Не уверен но именнованный пайп наверно помогет отцу русской демократии
AKA mkfifo

"RE: чтение из pipe"
Отправлено DmitryDemin , 07-Ноя-01 21:55 
Hi!
Скажите, а если между этими процессами (которые обмениваются данными) работает некоторый с другими задачами, то как эти данные все-таки сохранить для передачи? Через файл не подходит, как через память или какие потоки (которые "переживут" промежуточный процесс)?

Всего хорошего!
С уважением, Dmitry.