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

Вниз

Sockets: ESysError, code=5; AV...   Найти похожие ветки 

 
Makhanev A.S. ©   (2004-04-05 15:59) [0]

Есть 2 компонента, в которых используются:
многопоточный сервер и блокирующий клиент соответственно.

С вероятностью примерно 0.2 при закрытии клиента возникает AV ("in user32.dll") либо ESysError (code=5, "отказано в доступе").

Вернее, SysError, а потом AV.

Происходит это, если закрывается форма при открытом соединении.

При закрытии формы сокеты закрываются.

Сервер и Клиент реализованы в компонентах, наследуемых от TComponent.
В них есть поля FServerSocket: TServerSocket;
и
FClientSocket: TClientSocket
соответственно.

Все данные читаются/передаются через потоки (те, которые "нити").
То есть TServerSocket и TClientSocket используются только для установления соединения. Дальше они передают свои сокеты в потоки, которые в цикле осуществляют приём/передачу данных (через TWinSocketStream"ы).

Я понимаю, что нужно приводить код, но он большой для форума.
Если можно, укажите слабые места моей конструкции (откуда могут быть вышеуказанные ошибки?).
Естественно, могу привести отдельные участки кода, дабы не постить его сюда целиком.

Буду очень благодарен за любую помощь.

P.S.: если я сумбурно объяснил суть вопроса, могу написать поподробнее...


 
savva ©   (2004-04-05 16:27) [1]

а перед закытием сокетов остановить нити пробовал?


 
Makhanev A.S. ©   (2004-04-05 18:51) [2]


> savva ©   (05.04.04 16:27) [1]

Спасибо за совет.

Проблема действительно была со стопом потока.
Поток освобождался после освобождения сокета.

Ещё раз большое спасибо.



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
14-1083266065
ANDREY'S
2004-04-29 23:14
2004.05.23
Рабочий сто виндоус


3-1083035329
fbi
2004-04-27 07:08
2004.05.23
Фильтрация


3-1083148163
gu_est
2004-04-28 14:29
2004.05.23
номер колонки в DBGridEh


3-1082739226
lockheed_man
2004-04-23 20:53
2004.05.23
Проблемы с SQL-запросом.


4-1080817752
onyx
2004-04-01 15:09
2004.05.23
Неправильная форма