↑↑↓↓←→←→ⒷⒶ Войти !bnw Сегодня Клубы
shutdown() в линуксе блокирующий? А если на неблокирующем сокете вызвать, будет ли ок? Если не заблокируется, то как отследить его завершение? Конечная цель -- сделать так, чтобы shutdown() не блокировал выполнение треда. Мучил гугл этими вопросами, ответов не нашёл. Следующим шагом будет "читать исходники ядра", но я хотел бы избежать этого, поэтому, прошу, подскажите.
Рекомендовали: @komar
#ANYAOQ / @gds / 3559 дней назад

не палю
#ANYAOQ/LSN / @anonymous / 3559 дней назад

неблокирующий. если сенд-буффер пустой, то в него будет положен FIN-пакет.
если же сенд-буффер забит до верху, то FIN-флаг будет выставлен у последнего пакета в очереди отправки.

это для сервера. для клиента достаточно выставлять SO_LINGER нулевой

#ANYAOQ/T9A / @hirthwork / 3559 дней назад
@hirthwork я тя прям зауважал терь
#ANYAOQ/QSW / @komar --> #ANYAOQ/T9A / 3559 дней назад

@komar может ещё и детей от меня хочешь?

#ANYAOQ/SVY / @hirthwork --> #ANYAOQ/QSW / 3559 дней назад
@hirthwork не, иди нахуй
#ANYAOQ/NLY / @komar --> #ANYAOQ/SVY / 3559 дней назад

@komar передумал? #76N07H/WBD

#ANYAOQ/O50 / @hirthwork --> #ANYAOQ/NLY / 3559 дней назад
@hirthwork mkay :[ А почему тогда у меня pmp показывает shutdown среди функций, в которых программа проводит время, не показывая при этом read/write (которых по количеству больше, и они неблокирующие)? (у меня случай сервера.)
#ANYAOQ/KWR / @gds --> #ANYAOQ/T9A / 3559 дней назад
@hirthwork ну и память
#ANYAOQ/0Y0 / @dy --> #ANYAOQ/O50 / 3559 дней назад

@gds хз. у нас была проблема с тем что воркеры асинхронного сервера долго тупили закрывая каждое соединение. починилось именно выполнением шатдауна вместо закрытия сокета, а само закрытие сокета вынесли в отдельный пул тредов, который ничем полезным не занимался.

#ANYAOQ/3SM / @hirthwork --> #ANYAOQ/KWR / 3559 дней назад

@hirthwork с SHUT_WR мы вызываем shutdown(2)

#ANYAOQ/80T / @hirthwork --> #ANYAOQ/3SM / 3559 дней назад
@hirthwork ппц костыли @ думаю что-то подобное сделать, но пока не уверен.
#ANYAOQ/LCU / @gds --> #ANYAOQ/3SM / 3559 дней назад

@gds делай. другого выбора нет. алсо, у нас из-за джавы тут ещё один костыль пришлось втыкать: перед закрытием регать сокет в другом селекторе, чтобы сокет закрывался именно в отдельном треде, а не в воркере

#ANYAOQ/L3I / @hirthwork --> #ANYAOQ/LCU / 3559 дней назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.