добрый день!
пишу эту тему в раздел «talks» (а не в раздел «программирование») — потому что ну не думаю что это проблема всяких там языков программирования.
и так вопрос: почему Linux создаёт TCP-сокеты — по умолчанию без SO_KEEPALIVE?
из-за этого — очень много людей создают утечки ресурсов в своих серверных программах. (в клиентских программах тоже могут быть проблемы если не использовать SO_KEEPALIVE, например скрипт может зависнуть и ни когда в жизни не развиснуть сам).
а в свою очередь из-за этого — ни когда не знаешь какому коду доверять можно а какому коду нельзя. [проблема безопасности — обостряется:)], приходиться изучать сорцы, так как лично я не люблю утечки... хотя может кому-то и нравится, фиг знает:).
программист — он же думает как: что будто «мудрое Ядро поумолчанию сделало для него безопасный сокет, который в случае чего просто закроется и всё» (и ни каких проблем, якобы)... а на самом деле бывают понимаешь ли случаи что ни фига.
для меня конечно опция SO_KEEPALIVE — является давно уж не новостью.. но вот после того как недавно я посмотрел в несколько исходных кодов (таймеры там проверяются не во всех случаях, и при этом SO_KEEPALIVE тоже не используется) — решил задать этот вопрос на LOR.
ну LOR же точно должен знать ответ...
какая здесь сакральная причина? :-)