LINUX.ORG.RU

Неблокируемые сокеты. epoll


0

2

Ддобрый день.

Есть фундаментальный вопрос:
Испорльзую epoll. Делаю send в неблокируемый сокет.
Нужно ли отслеживать состояние входного буфера сокета на предмет прихода данных во время отправки данных?
Т.е. могут ли прийти(хотя бы теоретически) данные на сокет с которого в данный момент ведется отправка данных?
Спасибо.

Да как хошь: можешь сразу пробовать и читать, и писать на каждое событие, а можешь делать только то, на что еполл тебе показал.

const86 ★★★★★
()

> Нужно ли отслеживать состояние входного буфера сокета на предмет прихода данных во время отправки данных?

Нет.

Т.е. могут ли прийти(хотя бы теоретически)


Да, но вероятность, что данные придут в в момент отправки, а если у тебя сильно больше единственного дескриптора, то еще и, что именно на него придут, не стоит брать в расчет.

Кроме того, ты добавишь лишнюю (и дублирующюю!) ветвь к пути выполнения, что очень плохо.

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