Einzelnen Beitrag anzeigen

Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#1

Ereignisse in verschiedenen Threads

  Alt 23. Okt 2006, 11:42
Hallo,

ich habe zwei Threads:

Delphi-Quellcode:

TMyEreignis = procedure of object;

TMyThread = class(TThread)
  private
    X : Integer;
    Y : Integer;
    procedure MyEreignis;
  public
    Ereignis : TMyEreignis;
    procedure Execute;override;
    procedure Move;
    procedure TuWasAnderes;
  end;

var
  t1,t2 : TMyThread;


procedure TMyThread.Execute;
begin
//Irgendwas tun
end;

procedure TMyThread.Move;
begin

end;

procedure TMyThread.TuWasAnderes;
begin

end;

procedure TMyThread.MyEreignis;
begin

end;
Also die Threads sind quasi zwei Roboter die sich auf dem Spielfeld bewegen.

Wenn ein Roboter jetzt in der Prozedur "Move" ist, kann es passieren, dass er mit dem anderen Roboter kollidiert, was wiederum bei beiden das Ereignis auslösen soll.

Mein problem ist jetzt, wie schaffe ich es das der andere Thread der sich nicht in der Move-prozedur befindet das mitbekommt das er angefahren wurde? Die Ereignisse sollen ja "zeitgleich" stattfinden, also kann ich nicht die Prozedur von einem Roboter aus dem anderen Roboter aufrufen

Weis jemand wie ich das lösen kann, das der zweite(angefahrene) Roboter das mitbekommt und sofort "selbstständig" darauf reagiert?

Danke schonmal

Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat