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

Одновременное записывание/считывание данных в сокет   Найти похожие ветки 

← →
radium   (2005-05-19 22:12) [0]

Доброго времени суток!

Хочу сделать так: в клиенте есть 1 блокируемый сокет (напрямую использую WinSock) и 2 потока(thread) - записывающий и считывающий. Возможно ли пока в одном потоке функция recv ждёт данных от сервера, во втором потоке данные посылать на сервер функцией send используя этот же сокет?


← →
Eraser ©   (2005-05-19 22:27) [1]

radium   (19.05.05 22:12)

Невозможно!


← →
radium   (2005-05-19 22:34) [2]

Асинхронные подойдут?


← →
radium   (2005-05-19 22:38) [3]

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


← →
Eraser ©   (2005-05-19 22:39) [4]

radium   (19.05.05 22:34) [2]

Нельзя пока производится опирация ввода производить операцию вывода... ни у синхронных ни у асинхронных.

С пом. асинхронных можно создать видимость такого действия. Но одновременно не получится.


← →
Eraser ©   (2005-05-19 22:40) [5]

radium   (19.05.05 22:38) [3]
Данные могут поступать от сервера к клиенту


Вот в этом то и загвоздака...


← →
radium   (2005-05-19 22:48) [6]

Буду копать в сторону асинхронных. Thnx.


← →
Eraser ©   (2005-05-19 22:53) [7]

radium   (19.05.05 22:12)

Но учти, что команды посылать может только клиент... а сервер на них только отвечает (воможно тоже командами).


← →
Alexamder Panov   (2005-05-19 22:57) [8]


> Но учти, что команды посылать может только клиент...


Это как?


← →
Eraser ©   (2005-05-19 23:08) [9]

Alexamder Panov - это так специально задумано? )

Это как?

Метод Connect есть только у клиента.


← →
Alexander Panov ©   (2005-05-19 23:12) [10]

Eraser ©   (19.05.05 23:08) [9]
Метод Connect есть только у клиента


После подключения любая сторона может быть инициатором передачи данных.


← →
Eraser ©   (2005-05-19 23:15) [11]

Alexander Panov ©
После подключения любая сторона может быть инициатором передачи данных.


Но только какая-то одна!


← →
Digitman ©   (2005-05-20 08:11) [12]


> Но только какая-то одна!


разумеется.

и называется это сторона не клиентом или сервером, а передающей стороной.

соответственно другая сторона тоже ни клиент и не сервер, а принимающая сторона



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

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



Память: 0.47 MB
Время: 0.027 c
3-1121934665
Fedelio_
2005-07-21 12:31
2005.09.04
Время работы с DBF на разных машинах


14-1123943420
root
2005-08-13 18:30
2005.09.04
Игры для мобильников.


2-1123246871
_zx
2005-08-05 17:01
2005.09.04
кто-нить пользовался компонентой Asunc32?


9-1115816373
-=Alecsey=-
2005-05-11 16:59
2005.09.04
Графы


1-1123944771
Настя
2005-08-13 18:52
2005.09.04
PopupMenu и событие OnClick




   Наверх