Описание тега epollet
Epoll в режиме Edge Trigger
1
ответ
Эполл: потерять некоторые события EPOLLOUT?
Вот так выглядит мой сервер: -WorkerThread (ы): вызывает epoll_wait, принимает соединения, устанавливает неблокирование fd (EPOLLIN | EPOLLOUT | EPOLLET | EPOLLRDHUP) вызывает recv до EAGAIN для события EPOLLIN и помещает все данные в глобальный Rec…
02 авг '12 в 23:31
2
ответа
Эполл, управляемый одним выстрелом * на уровне * (): подразумевает ли EPOLLONESHOT EPOLLET?
Можно ли использовать epoll в режиме "один выстрел"? Я не мог найти информацию об этом, когда я искал; Кажется, что все используют режим с триггером.
26 авг '16 в 19:24
1
ответ
TCP: Когда генерируется EPOLLHUP?
Также посмотрите этот вопрос, без ответа на данный момент. Существует много путаницы по поводу EPOLLHUP даже в man и документы ядра. Люди, кажется, считают, что он возвращается при опросе дескриптора, локально закрытого для записи, т.е. shutdown(SHU…
24 окт '18 в 18:56
0
ответов
Эполл сокета: EPOLL_CTL_MOD сбросит граничный триггер?
Начните с добавления сокета в набор epoll для чтения по триггеру: epoll_event ev = {}; ev.data.fd = sock; ev.events = EPOLLIN | EPOLLET; // edge triggered reading epoll_ctl(efd, EPOLL_CTL_ADD, sock, &ev); Теперь ждите данных: result = epoll_wait…
01 сен '16 в 06:14
3
ответа
Epoll в режиме EPOLLET, возвращающий 2 EPOLLIN перед чтением из сокета
На странице руководства epoll говорится, что fd, зарегистрированный в EPOLLET(инициируемый фронтом), не должен дважды уведомлять EPOLLIN, если не было выполнено чтение.Поэтому после EPOLLIN вам нужно очистить буфер до того, как epoll_wait сможет вер…
20 апр '10 в 09:16
1
ответ
Неблокирующая проблема с сокетом recv при использовании его с epoll
У меня проблема: иногда (не регулярно) recv возвращается -1 а также errno == EAGAIN при использовании epoll в edge-triggered Режим. кусок кода: server_sock = startup(&port); if ( (epollfd = epoll_create(4096)) < 0) { perror("epoll_create erro…
08 сен '10 в 03:55
2
ответа
Необходимость последнего вызова read (2) в Epoll TCP по требованию
Учитывая неблокирующий сокет TCP, если вызов read(sock, buf, bufLen) возвращает значение < bufLenбезопасно ли тогда ждать запускаемого по фронту события EPOLLIN? Или я должен позвонить read еще раз, чтобы убедиться, что это ноль или EAGAIN? В моем т…
14 янв '14 в 10:20
1
ответ
C: Сервер пересылки данных с помощью epoll ET заполняет буфер отправки
У меня следующая ситуация. Мой сервер получает данные с удаленного сервера (fd_server) и пересылает их клиенту (fd_client). Я использую краевой epoll, чтобы я мог обрабатывать несколько клиентов и несколько серверных конфликтов. Процедура: клиент по…
22 янв '13 в 10:12
1
ответ
epoll_wait() сообщает обо всех событиях закрытия сокета?
Или мне тоже нужно следить за возвращаемыми значениями read() или write(), чтобы знать, когда закрывать сокетили это зависит от некоторых флагов?этот вопрос для epoll в режиме запуска по фронту
17 мар '18 в 00:48
0
ответов
Вложенный EPOLL FD
Я нахожу в Интернете очень ограниченную информацию о поведении вложенных FD. Допустим, EPOLL FD1 является общим для EPOLL FD2 и FD3. Так что же произойдет, если epoll FD1 получит событие Будет ли оно вызывать событие как для FD2, так и для Fd3, если…
30 апр '18 в 05:39
0
ответов
Почему EPOLLOUT меняет способ обработки EPOLLIN?
В документации неясно, объединяются ли события или нет, и мои тесты показывают, что они есть в некоторых случаях, но не всегда. Рассматривать man 7 epoll: Так как даже при работе с epoll-триггерами, инициируемыми ребром, при получении нескольких пор…
30 мар '16 в 07:42
1
ответ
Наблюдаются ли события epoll, когда не epoll_waiting
Я довольно новичок в программировании на основе событий. Я экспериментирую с epoll Режим края, который, по-видимому, только сигнализирует о файлах, которые стали готовыми для чтения / записи (в отличие от режима уровня, который сигнализирует обо все…
23 июл '15 в 08:23
1
ответ
Какой вариант использования EPOLLET?
epoll в режиме триггера это странный зверь. Требуется, чтобы процесс отслеживал, каков последний ответ для каждого отслеживаемого FD. Он обязывает процесс обрабатывать, в обязательном порядке, каждое событие, о котором сообщалось (иначе мы могли бы …
08 окт '17 в 16:32
2
ответа
Многопоточный TCP слушатель с epoll и EPOLLET в C
Я хочу написать многопоточный TCP-слушатель, используя epoll и EPOLLET, Я видел, что есть несколько возможностей: Каждый поток имеет свой собственный epoll fd, делает bind() с помощью SO_REUSEPORT (но только до ядра Linux 3.9) и обрабатывает свои со…
12 мар '16 в 18:32
0
ответов
Нужно ли использовать EPOLLONESHOT с EPOLLET для правильной обработки данных у нескольких работников?
Я хочу использовать epoll, чтобы помочь распределить TCP-сервер по нескольким работникам, которые могут обрабатывать ввод и вывод параллельно. Я прочитал, что я могу использовать EPOLLET таким образом, только один работник будет активен для каждого …
13 май '18 в 15:23
2
ответа
При использовании epoll, запускаемого по краю, я должен перебрать send?
Я использую epoll для написания медиа-сервера. Все fds настроены на неблокирование, и я использую инициируемые фронтом события. Я знаю, что для EPOLLIN мне нужно перебрать чтение fd, пока не вернется EAGAIN. Но как насчет письма? Когда я хочу написа…
05 июл '11 в 15:00
0
ответов
Linux epoll серверный дизайн и несколько циклов событий
Я смотрю на создание высокопроизводительного TCP-сервера (для работы на linux), который будет использовать системный вызов epoll в режиме запуска по фронту для получения уведомлений о событиях. Система, на которой я буду работать, имеет несколько пр…
27 фев '19 в 16:53
1
ответ
Эполл с запуском по краю, одним выстрелом и многопоточностью
Это вопрос относительно этого ответа: /questions/32562164/u-epoll-est-problemyi-s-potokami/32562175#32562175 (прокомментирую это, но вновь созданные учетные записи, очевидно, не могут, извините за шум. Ресурсы по epollet/ многопоточности найти трудн…
29 апр '13 в 16:41
1
ответ
Блокировка чтения на GPIO из Python: как заблокировать с помощью epoll() и выбрать.EPOLLET
Я экспериментирую с доступом к GPIO из Python на встроенной системе (ядро ARM), на которой работает Linux, созданный с помощью Buildroot (ядро 4.1.15). Я хочу, чтобы мой код BLOCK ожидал смены контакта на GPIO2 (то есть я не хочу опрашивать контакт,…
30 ноя '17 в 02:01
0
ответов
Как "специальные" флаги epoll соответствуют kqueue?
Я пытаюсь провести параллель между флагами epoll и kqueue, особенно EPOLLONESHOT EPOLLET EPOLLEXCLUSIVE и EV_CLEAR/EV_DISPATCH/EV_ONESHOT. Я исследую Kqueue впервые; У меня был только опыт работы с epoll. EV_DISPATCH Это похоже на сочетание флагов E…
10 авг '18 в 20:03