Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Вопрос-Ответ Новый топик    Ответить
 Почему TTCPServer/Client работает только с 1 пользователем одновременно  [new]
softmaker
Member

Откуда: оттуда
Сообщений: 1088
ТЕКСТ ИСПРАВЛЕН МНОЙ - tchingiz



Софтмакер.

0
Вы задали этот вопрос в форуме по дельфи

1
Ваши коментарии по поводу небытия - не тема для форума вопрос - ответ

2
Перед тем, как постите, ознакомьтесь с правилами пожалуйста
https://www.sql.ru/forum/rules.aspx

Рекомендации
Не рекомендуется:

...
Отправлять сообщение одновременно в несколько форумов. Модераторы соответствующих форумов вправе удалить такие сообщения.

Создавать несколько топиков с одинаковым вопросом.
20 июн 05, 14:07    [1633348]     Ответить | Цитировать Сообщить модератору
 Re: Почему TTCPServer/Client работает только с 1 пользователем одновременно  [new]
softmaker
Member

Откуда: оттуда
Сообщений: 1088
Объясню подробнее:

После подключения первого клиента к серверу сервер принимает подключение Accept и выполняет OnCreateThread. В обработчике создается экземпляр потока для работы с клиентом. Этот поток начинает принимать данные от клиента, длитя это некоторое время. Если в это время подключается второй клиент, сервер откладывает принятие подключения до того, пока полностью не примет данные от первого клиента.
Создается впечатление, что очередь сообщений сервера просто заморожена, до полной отработки запущенного потока. Пробовал Sleep(0) - не помогает!

Вопрос: можно ли это как-то разрешить: разморозить очередь или дать серверу занятся своим Listen (чтобы он не глох :)) В обычном событии приложения это лечится при помощи Application.ProcessMessages, есть ли какой-нибудь аналог здесь?
20 июн 05, 14:45    [1633534]     Ответить | Цитировать Сообщить модератору
Все форумы / Вопрос-Ответ Ответить