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

Вниз

Как правильно уничтожить объект TClientSocket?   Найти похожие ветки 

 
SergP ©   (2003-08-13 15:10) [0]

Делаю так:
http://delphimaster.net/view/15-1060769191/

Вобщем уничтожаю ненужный сокет:
CS:array[0..50] of TClientSocket;
...
for j:=0 to 50 do
if assigned(CS[j]) and (CS[j].tag=handl) then
begin
CS[j].active:=false;
CS[j].Free;
cs[j]:=nil;
end;

Подозреваю что неправильно.
Нужно ли прежде чем уничтожать сокет дождаться его дисконекта?
Если да - то можно ли его уничтожать в процедуре-обаботчике им же сгенерированного события?


 
Skier ©   (2003-08-13 15:15) [1]

destructor TCustomWinSocket.Destroy;
begin
FOnSocketEvent := nil; { disable events }
if FConnected and (FSocket <> INVALID_SOCKET) then
Disconnect(FSocket);
if FHandle <> 0 then DeallocateHWnd(FHandle);
FSocketLock.Free;
Cleanup;
FreeMem(FGetHostData);
FGetHostData := nil;
inherited Destroy;
end;


 
SergP ©   (2003-08-14 22:20) [2]

А поподробнее можно? А то не представляю что мне с этим делать...


 
Anatoly Podgoretsky ©   (2003-08-14 22:38) [3]

Вроде бы жирным выделен ответ на твой вопрос



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

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

Наверх




Память: 0.47 MB
Время: 0.037 c
4-40740
VladP
2003-08-07 14:34
2003.10.13
запуск приложения от имени системы или администратора


3-40299
Анатолий
2003-09-22 14:17
2003.10.13
Фильтр в Table


11-40325
Zelius
2003-01-30 17:54
2003.10.13
Как создать контрол в качестве Child а по парентовому хендлу?


11-40335
DrFaust
2003-01-21 13:37
2003.10.13
PageControl


1-40362
Relaxxx
2003-10-01 17:39
2003.10.13
Убрать все пробелы с строки?????