Вопросы по теме 'epoll'

Потеря байтов в неблокирующем сокете, контролируемом epoll, когда другая сторона записывает и закрывает
В настоящее время у меня есть неблокирующий сокет: ev.events = EPOLLIN | EPOLLPRI | EPOLLERR | EPOLLHUP | EPOLLRDHUP| EPOLLET; Он получает пару EPOLLIN, которые я читаю без блокировки до EAGAIN, а затем я получаю HUP и RDHUP, иногда с еще...
1431 просмотров
schedule 16.05.2022

неблокирующее соединение tcp с epoll
Мое приложение Linux выполняет неблокирующий системный вызов TCP-соединения, а затем использует epoll_wait для обнаружения завершения трехстороннего рукопожатия. Иногда epoll_wait возвращается с событиями POLLOUT и POLLERR , установленными для...
11217 просмотров
schedule 28.06.2022

Многопоточный UDP-сервер с epoll?
Я хотел бы разработать многопоточный сервер UDP в C/Linux. Служба работает на одном порту x, поэтому есть возможность привязать к ней только один UDP-сокет. Чтобы работать при высоких нагрузках, у меня есть n потоков (статически определенных),...
11128 просмотров
schedule 04.06.2022

Как правильно читать данные при использовании epoll_wait
Я пытаюсь перенести в Linux существующий код Windows C++, использующий IOCP. Решив использовать epoll_wait для достижения высокого параллелизма, я уже столкнулся с теоретическим вопросом, когда мы пытаемся обрабатывать полученные данные....
9663 просмотров
schedule 06.10.2022

С одним файловым дескриптором. Есть ли разница в производительности между select, poll и epoll и ?
Название действительно говорит само за себя. Средства и ... также включают в себя pselect и ppoll.. Проект сервера, над которым я работаю, в основном структурирован с несколькими потоками. Каждый поток обрабатывает один или несколько сеансов....
4357 просмотров
schedule 04.08.2022

В чем разница между управляемым событиями и асинхронным? Между epoll и AIO?
Управляемый событиями и асинхронный часто используются как синонимы. Есть ли между ними разница? Кроме того, в чем разница между epoll и aio ? Как они подходят друг другу? Наконец, я много раз читал, что AIO в Linux ужасно сломан. Как...
15377 просмотров
schedule 09.12.2022

Может ли epoll получить пакет udp?
Я новичок в сетевом программировании и слышал об epoll. Я прочитал пару руководств и теперь у меня есть общее представление о том, что делает epoll и как я могу это реализовать. Вопрос в том, могу ли я использовать epoll, даже если клиент будет...
4873 просмотров
schedule 07.05.2022

Есть ли хорошие примеры или руководство по epoll UDP?
Я работал с linux-сервером, используя epoll, и почти закончил его. И понял, что клиенты будут слать пакеты по udp :( Не могли бы вы предоставить мне какие-либо хорошие учебные пособия или примеры использования epoll udp? Заранее спасибо.
5111 просмотров
schedule 01.05.2023

Максимальное количество сокетов Соединение с epoll
Я использую CentOS (Linux) и мне интересно максимальное соединение, которое может иметь один сервер через epoll (Edge Trigger, OneSHot). Мне удалось установить 100 016 подключений, играющих в пинг-понг (нон-стоп) через банкомат. Сколько сокетов...
2611 просмотров
schedule 26.08.2022

Использование void ptr в структуре событий для epoll
В структуре события epoll есть void pointer . Я выделяю память для этого и использую ее в другом месте. Теперь, когда я хочу удалить FD из списка epoll, этот указатель будет освобожден сам по себе? (Логическая цепочка мыслей будет заключаться в...
822 просмотров
schedule 29.01.2023

сколько памяти будет выделено для указателя событий в epoll_wait
Я пытаюсь понять указатель событий в epoll_wait. Когда epoll_wait возвращает значение, указывает ли этот указатель на некоторую память (не выделенную пользователем), где присутствуют все структуры событий? Или нам нужно выделить память для этого...
399 просмотров
schedule 03.06.2023

Не удалось проснуться от epoll_wait, когда другой процесс закрывает fifo
Я вижу различное поведение epoll и select в двух разных двоичных файлах и надеялся на помощь в отладке. В дальнейшем epoll_wait и select будут использоваться как синонимы. У меня есть два процесса, один писатель и один читатель, которые...
843 просмотров
schedule 26.05.2022

Как определить, что все ранее зарегистрированные события в epoll были отменены?
Предположим, я регистрирую конечное количество событий, используя epoll_ctl в какой-то функции. Теперь при повторных вызовах одной и той же функции я отменяю регистрацию каждого из этих событий по несколько за раз, используя: epoll_ctl(epfd,...
398 просмотров
schedule 20.09.2022

Не завершайте программу в epoll_wait
Я хочу обработать, если epoll_wait было прервано по какой-либо причине (например, SIGINT) while ( true ) { n = epoll_wait ( epoll_fd, events, max_events, -1 ); if ( errno == EINTR ) { ... } } Но отладчик даже не пошел к...
911 просмотров
schedule 19.10.2022

Как заблокировать, пока не будут готовы все файловые дескрипторы? Использовать select()/poll()/epoll()?
Я нахожусь в ситуации, когда я хотел бы, чтобы программа C блокировала набор файловых дескрипторов, пока все файлы не будут готовы. Это отличается от традиционных системных вызовов select(), poll() и epoll(), которые блокируются только до тех пор,...
327 просмотров

Epoll_wait возвращает события для дескриптора закрытого файла
Я работаю с многопоточным встроенным приложением, в котором epoll используется для ввода-вывода в одном из потоков. Я полагаюсь на особую функцию epoll, которая указывает, что закрытие файлового дескриптора автоматически удаляет его из набора epoll...
2739 просмотров
schedule 13.11.2022

Python select.epoll().poll(), опрашивает только маску события 25
Я создал сервер с RequestHandler, который наследуется от SocketServer.BaseRequestHandler , который опрашивает socketEvents и Qevents с помощью epoll. В первые несколько раз, когда я подключаю клиент к серверу, все работает, как и ожидалось, пока в...
450 просмотров
schedule 08.04.2023

Получение SIGPIPE с неблокирующими сокетами — это нормально?
Я пишу сетевой сервер на основе epoll на C. Когда я создаю свой сокет для прослушивания входящих соединений, я делаю его неблокирующим, используя fcntl . Точно так же, когда входящие соединения поступают от клиентов, я делаю их сокеты...
1360 просмотров
schedule 12.04.2023

Как использовать signalfd и epoll для получения события при выходе из моего дочернего процесса?
Я создаю sigset_t и устанавливаю его пустым, затем добавляю к нему SIGCHLD , затем устанавливаю BLOCK : sigset_t sigmask; sigemptyset (&sigmask); sigprocmask (SIG_BLOCK, &sigmask, NULL); Затем создайте signalfd через...
2785 просмотров
schedule 29.07.2022

Каковы основные различия между select, epoll, kqueue и evport?
Я читаю Redis недавно. Redis реализует простую библиотеку, управляемую событиями, на основе мультиплексирования ввода-вывода. Redis говорит, что выберет лучшее мультиплексирование, поддерживаемое системой, и дает следующий код: /* Include the...
4800 просмотров
schedule 26.04.2023