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

Вниз

> Стабильность .....TServerSocket   Найти похожие ветки 

 
malefik   (2006-11-27 10:35) [0]

Удалено модератором
Примечание: СПАМ


 
Сергей М. ©   (2006-11-27 10:45) [1]


> malefik   (27.11.06 10:35)



> могу код предоствить


Приводи код в отдельной ветке в "Сетях", с подробными комментариями, где и что у тебя там происходит


 
malefik   (2006-11-27 11:02) [2]

void __fastcall TMyServerThread_1::ClientExecute(void)
{
 int _count_read;

 _write_to_log("Обнаружено подключение с адреса: " + ClientSocket->RemoteAddress);
 while (!Terminated && ClientSocket->Connected)
 {
   try
   {
     TWinSocketStream* pStream = new TWinSocketStream(ClientSocket, CLIENTWAITTIME_1);

     try
     {
       char buffer[BUFFERSIZE_1];
       memset(buffer, 0, sizeof(buffer));

       if (pStream->WaitForData(CLIENTWAITTIME_1))
       {
         if (!Terminated && ClientSocket->Connected)
         {
           try
           {
             _count_read = pStream->Read(buffer, sizeof(buffer));
           }
           catch (...)
           {
             throw 234;
           }

           if (!(_count_read == 0))
           {
             _gps_data->_send_data_to_base(buffer);
           }
           else
             throw 207;
         }
         else
           throw 220;
       }
       else
         throw 206;
     }
     __finally
     {
       delete pStream;
     }
   }
   catch (int& i)
   {
     switch (i)
     {
     case 206:
       {
         _write_to_log("[206] Ошибка. Время ожидания команды от клиента истекло.");
         break;
       }
     case 207:
       {
         _write_to_log("[207] Ошибка. Нет данных для чтения. Проблемы с соединением?");
         break;
       }
     case 230:
       {
         _write_to_log("[230] Ошибка. Принятые данные не содержат разделителей.");
         break;
       }

     case 231:
       {
         _write_to_log("[231] Ошибка. Проблемы с базой данных?");
         break;
       }

     case 232:
       {
         _write_to_log("[232] Ошибка. Метод _parse_fields.");
         break;
       }
     case 233:
       {
         _write_to_log("[233] Ошибка. Метод _apply_to_base.");
         break;
       }

     case 213:
       {
         _write_to_log("[213] Ошибка. Ошибка выделения пакета. Мусор на входе?");
         break;
       }

     case 220:
       {
         _write_to_log("[220] Ошибка. Соединение было разорвано.");
         break;
       }

     case 234:
       {
         _write_to_log("[234] Ошибка. Чтение данных из потока.");
         break;
       }

     }

     ClientSocket->Close();
   }
   catch (...)
   {
     _write_to_log("[???] Ошибка. TMyServerThread_1::ClientExecute.");
     ClientSocket->Close();
   }
 }
}


 
Сергей М. ©   (2006-11-27 11:11) [3]

Русский язык понимаешь ?

1. Вопрос д.б. задан в "Сетях".
2. С подробными комментариями по проблеме.



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

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

Наверх




Память: 0.48 MB
Время: 0.069 c
9-1140419696
VK
2006-02-20 10:14
2006.12.17
DelphiX на разных машинах - полупрозрачность и скорость


2-1164868094
pavel_guzhanov
2006-11-30 09:28
2006.12.17
Работа с XML


1-1162451286
Helen
2006-11-02 10:08
2006.12.17
Сворачивание формы на панель задач


1-1162305252
Merlot
2006-10-31 17:34
2006.12.17
Прочитать список всех запущенных Exe


2-1165001960
Defort
2006-12-01 22:39
2006.12.17
Компиляция