LINUX.ORG.RU

poll() error


0

0

Здравствуйте. Чем может быть вызвана ошибка transport endpoint is not connected? Возникает нерегулярно, пока не могу найти закономерность..

anonymous

Ответ на: комментарий от cvv

А чего не хватает для ответа? Передаю poll() положительный дискриптор, он иногда возвращает -1, perror пишет указанную выше ошибку. Когда именно это происходит установить не смог, потому что в отладчике не разу не проявлялось (на одних и тех же данных). Приложение сетевое, многопоточное (LinuxThreads)

anonymous
()
Ответ на: комментарий от anonymous

фрагмента кода где ты вызываеш poll и обрабатываеш его результат

а также код где ты создаёш и закрываеш свои файловые дескрипторы

cvv ★★★★★
()
Ответ на: комментарий от cvv

Это типа прикол такой? :) конечно 5k строк не так много, но все же постить их сюда проблемно. К тому же, я не думаю что это поможет ответить на, по-моему простой, вопрос: в каком случае poll() возвращает эту ошибку :)

код примерно такой:

state = poll(...)
switch (state) {
 ...
 case -1:
  perror("poll() ");
}

Если этих данных недостаточно, что ж, извините, буду пытаться разобраться сам.

anonymous
()
Ответ на: комментарий от anonymous

anonymous (*) (19.10.2005 13:49:27):

> ...по-моему простой, вопрос: в каком случае poll() возвращает эту ошибку

В _такой_ постановке ответ найти несложно в документации по glibc:

http://www.gnu.org/software/libc/manual/html_mono/libc.html

int ENOTCONN Macro

The socket is not connected to anything. You get this error when you try to transmit data over a socket, without first specifying a destination for the data. For a connectionless socket (for datagram protocols, such as UDP), you get EDESTADDRREQ instead.

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