LINUX.ORG.RU

pipe


0

0

Существует ли какой-нибудь способ узнать что на другой стороне

закрыли pipe? Т.е. если я буду туда писать, то получу SIGPIPE,

а если я зхахочу читать оттуда, или сделать poll/select?

anonymous

Re: pipe

select выберет канал для чтения (как бы, есть данные), а read
вернет 0.

vnp ()

Re: pipe

Ага! Попробую, а вот poll не хочет выбирать такой канал

для чтения.

anonymous ()

Re: pipe

Ага! Попробую, а вот poll не хочет выбирать такой канал

для чтения.

anonymous ()

Re: pipe

ты в курсе что select() сделан через poll() ? :)

lg ★★ ()

Re: pipe

нет, не в курсе, а как?
и как добились разного поведения?
IMHO скорее уж select через poll.

anonymous ()

Re: pipe

Вот выяснил -- для write fd poll устанавливает POLLERR,
а для read fd POLLHUP.
select deprecated, IMHO

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