Задать вопрос
@luaPower

Как узнать максимальный размер данных доступных для записи в сокет?

Здравствуйте.

Допустим, сокет находится в неблокирующем режиме.
Как узнать количество байтов в буфере сокета доступных для записи новых данных?
Так, чтобы вызов send не вернул ошибки EAGAIN или EWOULDBLOCK.

Спасибо!
  • Вопрос задан
  • 155 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Инженер по тестированию
    8 месяцев
    Далее
  • Яндекс Практикум
    DevOps для эксплуатации и разработки
    6 месяцев
    Далее
  • Яндекс Практикум
    Go-разработчик с нуля
    8 месяцев
    Далее
Решения вопроса 1
XXXXPro
@XXXXPro
Fullstack Web developer
В Linux напрямую — никак. Можно получить размер буфера через getsockopt и получить количество неотправленных данных через ioctl(socket,SIOCOUTQ), а потом вычесть одно из другого.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы