The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"OpenNews: Пять наиболее распространенных ошибок при программ..."
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [Проследить за развитием треда]

"OpenNews: Пять наиболее распространенных ошибок при программ..."
Сообщение от opennews on 23-Сен-05, 10:12 
В статье "Five pitfalls of Linux sockets programming (http://www-128.ibm.com/developerworks/linux/library/l-sockpit/)" описываются пять наиболее часто встречающихся ошибок в программах начинающих программистов, использующих API сетевых сокетов.

Кратко:

-  Игнорирование кода статуса завершения операции;
-  Отсутствие обработки факта закрытия соединения  удаленной стороной;
-  Отсутствие setsockopt(...SO_REUSEADDR..) перед bind();
-  Отправка структурированных данных, забывая про возможные различия их интерпретации на различных платформах;
-  Неправильная организация блочной передачи в рамках одного потока TCP (например, шлют по TCP через send два блока по 100 байт и полагают, что для чтения будет два read по 100, а не один по 200).

URL: http://www-128.ibm.com/developerworks/linux/library/l-sockpit/
Новость: https://www.opennet.ru/opennews/art.shtml?num=6126

Cообщить модератору | Наверх | ^

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Пять наиболее распространенных ошибок при программировании с..."
Сообщение от coroner email on 23-Сен-05, 10:12 
нужная статейка..в закладки:)
Cообщить модератору | Наверх | ^

2. "Пять наиболее распространенных ошибок при программировании с..."
Сообщение от max (??) on 24-Ноя-05, 12:29 
При примере Игнорирование кода статуса завершения операции я бы сказал что не совсем верно контролировать ошибку возвращаемую send. То есть её нужно проверять, но send не вернёт информацию о том что пакет действительно доставлен получателю. В случае не удачной отправки пакета send вернёт всё впорядке. Тем более у него стоит флаг MSG_DONTWAIT. В любом случае необходимо получать подтверждение.
Cообщить модератору | Наверх | ^

Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру