Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.23;
Скачать: CL | DM;

Вниз

Как сделать переключение?   Найти похожие ветки 

 
новенький   (2006-04-06 19:44) [0]

Здраствуйте, возникла небольшая проблема, в приложении надо реализовать такую схему: есть два компонента ServerSocket и ClientSocket, при старте приложении нужно сделать чтобы сначала клиент коннектился к серверу и если через время Random(10мс) он не приконнектился, то клиент останавливался и запускался сервер и т.д., как это реализовать?


 
Жуков Олег   (2006-04-06 20:39) [1]

наверное так:
const
 TimeOut = 3000; //3000 msec
var
 SavedTime: Integer

 SavedTime:= GetTickCount();
 ClientSocket.Open();
 while not ClientSocket.Socket.Connected and (GetTickCount() - SavedTime < TimeOut) do
   Application.ProcessMessages();

 if not ClientSocket.Socket.Connected then
   StartServer()


мне кажется 10 мс мало будет...


 
tesseract ©   (2006-04-06 21:40) [2]

по какому протоколу коннектишься? В UDP есть таймаут соединения, после которого выдаётся ошибка подключения.
TCP без организации подключения вообще не сработает. Разница между клиентом и сервером практически чисто в определениях.


 
новенький   (2006-04-07 17:38) [3]

поставил 100мс, и немного доработал код, но за идею огромное спасибо!!!!!!



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

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

Наверх




Память: 0.47 MB
Время: 0.047 c
2-1144405937
Максим_86
2006-04-07 14:32
2006.04.23
Поместить иконку на панель задач


2-1144710950
Neiroman
2006-04-11 03:15
2006.04.23
стандартный диалог с Edit`ом


1-1142683951
Ольга
2006-03-18 15:12
2006.04.23
Проблема при работе двух процессов с одним файлом.


3-1140741494
Rodelim
2006-02-24 03:38
2006.04.23
Внешние таблицы для ACCESS


6-1136712267
n0p
2006-01-08 12:24
2006.04.23
Отключение Nagle в Indy 10