Вниз
Скачать: CL | DM;

Определить режим работы сокета: блок. или неблок. в Winsock   Найти похожие ветки 

← →
DVM ©   (2009-05-08 21:35) [0]

Подскажите, что-то никак не могу понять (найти функцию в Winsock), с помощью которой можно было бы определить в каком режиме (блокирующем или нет) находится сокет. Функции fcntl() в Winsock по-видимому нет. Как это сделать?


← →
Сергей М. ©   (2009-05-09 10:32) [1]

Да, пожалуй, и нет такой ..
А собссно зачем это может понадобиться ?
Я так понимаю, хэндл сокета достался тебе от кого-то "по наследству" ибезо всяких "документов" ?


← →
DVM ©   (2009-05-09 11:15) [2]


> А собссно зачем это может понадобиться ?

Теперь уже чисто академический интерес. Практической пользы от данной функции скорее всего и нет, т.к. если сокет "мой", то я всегда его могу перевести в нужный режим и все дела. Потому ее наверное и нету. Хотя из чисто информационных целей могли бы и оставить.


> Я так понимаю, хэндл сокета достался тебе от кого-то "по
> наследству" ибезо всяких "документов" ?

Да. Именно это и стало первоначальной причиной поиска такой функции.


← →
Slym ©   (2009-05-13 12:38) [3]

if ioctlsocket(SocketHandle,FIONBIO,0)=SOCKET_ERROR then
begin
if WSAGetLastError=WSAEINVAL then НЕБЛОКИРУЮЩИЙ
end;


← →
Сергей М. ©   (2009-05-13 13:11) [4]


> Slym ©   (13.05.09 12:38) [3]


Цитата из справки:

If WSAAsyncSelect or WSAEventSelect has been issued on a socket, then any attempt to use ioctlsocket to set the socket back to blocking mode will fail with WSAEINVAL

А если WSAAsyncSelect or WSAEventSelect has NOT been issued ?

)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.004 c
15-1306179935
DmitriyG.
2011-05-23 23:45
2011.09.25
Возврат интерфейса в Builder


4-1250595955
pirate
2009-08-18 15:45
2011.09.25
Alt+MouseUp


15-1306408784
OW
2011-05-26 15:19
2011.09.25
Про ценообразование фруктов и овощей.


2-1307420556
Sergey
2011-06-07 08:22
2011.09.25
Версия EhLid


2-1306486440
Studentik
2011-05-27 12:54
2011.09.25
зависает программа




   Наверх