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

Вниз

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

 
dimonf ©   (2003-06-06 12:52) [0]

У меня есть два потока наследники от TTCPThread который в свою очередь наследник от THread.
В первом потоке в обработке Execute я создаю второй поток, дык вся фишка в том что у меня почемуто не обрабатываеться событие Execute второго потока!

TBaseThread = class(TTCPThread)
public
Constructor Create(Owner: TComponent); override;
Destructor Destroy; override;
procedure Execute(); override;
end;

TExecuteThread = class(TTCPThread)
private
public
Constructor Create (hsock:tSocket; hObj:TMailInfo);
Destructor Destroy; override;
procedure Execute(); override;
end;

procedure TBaseThread.Execute;
begin
if CanRead(1000) then
begin
if lastError=0 then TPop3ExecuteThread.create(ClientSock,FObj);
end;
end;

Может я что-то неправильно делаю, подскажите плиз???


 
Digitman ©   (2003-06-06 13:03) [1]

что это еще за событие Execute ?
нет таких ни у класса TThread ни у его наследников, декларации которых ты привел здесь

и что это за TPop3ExecuteThread ? не вижу ни декларации ни реализации


 
dimonf ©   (2003-06-06 13:13) [2]

Пордон, TPop3ExecuteThread это и есть поток TExecuteThread просто я забыл удалить!

Вот:
type
TTCPThreadDataNotifyEvent = procedure(Sender: TObject; Thread: TTCPExecuteThread; var Data: Pointer) of object;

TTCPThread = class(TThread)
public
constructor Create(Owner: TComponent); override;
destructor Destroy; override;
published
property OnExecute: TTCPThreadDataNotifyEvent read FOnExecute write FOnExecute;
end;

Вот на OnExecute я и хочу повесить свой обработчик!


 
Darrin ©   (2003-06-06 13:14) [3]

> Digitman © (06.06.03 13:03)
как нет Execute,
а TThread.Execute ???

procedure Execute; virtual; abstract;


 
Skier ©   (2003-06-06 13:15) [4]

>Darrin © (06.06.03 13:14)
И это событие ?


 
Palladin ©   (2003-06-06 13:18) [5]

вешается простым присваиванием


 
Digitman ©   (2003-06-06 13:18) [6]


> Darrin


нет, не событие


> dimonf


покажи реализацию класса TTCPThread


 
Darrin ©   (2003-06-06 13:21) [7]

сори сглупил :)


 
reonid ©   (2003-06-06 13:25) [8]

Если ты создал своё событие, то
его обработчик события ты лично должен вызвать.
Где ты это делаешь?


 
Digitman ©   (2003-06-06 13:26) [9]


> Darrin


надо понимать, проблема рассосалась сама собой)



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

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

Наверх




Память: 0.48 MB
Время: 0.022 c
3-60067
Niki
2003-05-28 14:12
2003.06.19
EmptyTable для ADOTable


3-60056
Kapitan
2003-05-28 12:03
2003.06.19
Cancel и DBGrid


1-60227
shal
2003-06-05 16:08
2003.06.19
скалярное произведение, метод Гаусса...


3-60091
vit1973
2003-05-27 12:52
2003.06.19
D6+ADO+MSAccess - что устанавливать на голую винду


6-60307
Jaguar
2003-04-08 14:32
2003.06.19
Proxy-сервер, FTP-протокол