Главная страница
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.053 c
6-1136908622
GanibalLector
2006-01-10 18:57
2006.04.23
Select (Socket API)


15-1143740118
xayam
2006-03-30 21:35
2006.04.23
VMWare 5.5


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


3-1140673919
vlgrig1961
2006-02-23 08:51
2006.04.23
Портятся индексы как с этим бороться


3-1140537594
parovoZZ
2006-02-21 18:59
2006.04.23
Значение автоинкремнтного поля и ADOQuery