Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.04;
Скачать: 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 вся ветка

Текущий архив: 2005.09.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.042 c
5-1097234297
LAndrey
2004-10-08 15:18
2005.09.04
трабл в DBGridEh


3-1121958144
Prohodil Mimo
2005-07-21 19:02
2005.09.04
клонирование записей из 3х связанных таблиц


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


1-1124140320
Витёк
2005-08-16 01:12
2005.09.04
Обработка события входа курсора мыши на компонент и выхода!


8-1113403006
Unknown user
2005-04-13 18:36
2005.09.04
Разрешение картинки