Thema: Delphi Thread Anfängerfrage

Einzelnen Beitrag anzeigen

Spurius

Registriert seit: 19. Aug 2003
294 Beiträge
 
Delphi 7 Professional
 
#42

Re: Thread Anfängerfrage

  Alt 27. Nov 2003, 16:46
Hallo,
hier ist der Code meines Threads:
Delphi-Quellcode:
unit threadtest;

interface

uses
  Classes,idtcpclient,dialogs,StdCtrls,sysutils;

type
  tmythread = class(TThread)
  private
    fclient:tidtcpclient;
    fmemo:tmemo;
    s: string;
    procedure updatememo;
  protected
    procedure Execute; override;
  public
   constructor create(const aclient: tidtcpclient;
   const amemo: tmemo);

  end;

implementation
uses modul;

constructor tmythread.create(const aclient: tidtcpclient;
         const amemo: tmemo);
begin
 inherited create(true);
 fclient := aclient;
 fmemo := amemo;
 resume;
end;

procedure tmythread.Execute;
begin
 while not terminated do
   fclient.ReadLn(s,500); //<- wenn ich das bei unten bei updatememo einsetzt, friert
   synchronize(updatememo); // das prog ein, wenn es hier lasse, friet nix ein, aber
   sleep(100); // der thread bewirkt auch nichts
end;


procedure tmythread.updatememo;
begin

 fmemo.Lines.Append(s);
end;
end.
Also, oben meine Kommentare im Code, und dann noch ne Frage, es ist schon richtig dass ich den thread im mainthread einfach create, ich muss sonst nichts dort verändern, oder?
Gruß
Spurius
  Mit Zitat antworten Zitat