Здравствуйте! Такая вот проблема.. запускаю poll с .events = POLLIN для нескольких дескрипторов. Пока пишу в пайпы для которых всё это открыто, всё нормально - событие детектится и т.д. Но вот когда вдруг один из пайпов закрываю, событие POLLHUP продолжает детектится... Как замаскировать это событие? В /usr/include/poll/bits.h сказано: /* Event types that can be polled for. These bits may be set in `events' to indicate the interesting event types; they will appear in `revents' to indicate the status of the file descriptor. */ #define POLLIN 0x001 /* There is data to read. */ #define POLLPRI 0x002 /* There is urgent data to read. */ #define POLLOUT 0x004 /* Writing now will not block. */ <...> /* Event types always implicitly polled for. These bits need not be set in `events', but they will appear in `revents' to indicate the status of the file descriptor. */ #define POLLERR 0x008 /* Error condition. */ #define POLLHUP 0x010 /* Hung up. */ #define POLLNVAL 0x020 /* Invalid polling request. */ И как быть? Переформировывать массив pollfd каждый раз после закрытия одного из потоков? Как-то это неудобно, может есть лучшие варианты?
Ответ на:
комментарий
от lv
Ответ на:
комментарий
от lv
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от lv
Ответ на:
комментарий
от lv
Ответ на:
комментарий
от kto_tama
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от lv
Ответ на:
комментарий
от lv
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от lv
Ответ на:
комментарий
от Deleted
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Неустоичивая работа сокетов в O_NONBLOCK режиме (2004)
- Форум Lout и русский (2010)
- Форум Листая HIG (2013)
- Форум poll() ? (2002)
- Форум poll() (2004)
- Форум poll() (2005)
- Форум Замаскировать микрофоны (2016)
- Форум Замаскированные пакеты (2008)
- Форум polls, links (2011)
- Форум poll() error (2005)