Einzelnen Beitrag anzeigen

Zerolith

Registriert seit: 12. Mär 2003
Ort: Kempten
188 Beiträge
 
Delphi 6 Enterprise
 
#2

Re: Pakete über Sockets versenden, Thread hängt sich auf

  Alt 3. Jun 2009, 16:14
Habs jetzt nur kurz überflogen, aber ggf. wäre interessant was hier passiert:
Delphi-Quellcode:
 case cmd.GetCmd of
        SYS_ALIVE : begin
          //...
        end;
        SYS_PING : begin
          //...
        end;
        SYS_AUTHKEY : begin
          //...
        end;
        CMDError : begin
          //...
        end;
      else //kein systembefehl weiter bearbeiten
        fJobThread.AddJobToSocket(socket,sJob);
      end;
Ist da irgendeine Stelle, die z.B. eine VCL Komponente ändert. (Repaint?) Das müsstest du dann mit dem Hauptthread synchronisieren.

z.B. statt:
Delphi-Quellcode:
SYS_PING : begin
  Label1.Caption := 'TEST';
end;
sollte das so sein
Delphi-Quellcode:

procedure ChangeCaption;
begin
  Label1.Caption := 'TEST';
end;

SYS_PING : begin
  Synchronize(ChangeCaption);
end;
Daniel
  Mit Zitat antworten Zitat