Einzelnen Beitrag anzeigen

Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#6

Re: Thread in TIdTCPClient-Klasse

  Alt 22. Sep 2005, 15:33
Die Variable für den Thread sollte als private Klassenvariable deklariert werden, da sie sonst nur in dem Methode zur Verfügung steht.

Delphi-Quellcode:
type TOwnTCPClient = class(TIdTCPClient)
[...]
procedure DoQuery;
[...]
end;

type TQueryThread = class(TThread)
private
  QT: TQueryThread;
public
  procedure Execute; override; //so ähnlich zumindest
  constructor Create;
  destructor Destroy; override;
end;
[...]

constructor TQueryThread.Create;
begin
  QT := TQueryThread.Create(true); // suspended
end;

destructor TQueryThread.Destroy;
begin
  QT.Free;
end;

procedure TQueryThread.Execute;
begin
  InternalTCP.Query;
end;

procedure TOwnTCPClient.DoQuery;
begin
  QT.Resume;
end;
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat