Du kannst eine globale Variable deklarieren. Wenn die Variable während der Ausführung des threads verändert werden kann, musst du noch so eine art "valid-flag" deklarieren:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| var test: tthread; form1: tform1; var1: integer; var1valid: boolean;
procedure ttest.execute; begin repeat if var1valid then begin flag1valid := false; verarbeiten(var1); end; until ; end;
procedure tform1.button1click(sender: tobject); begin var1 := 123; var1valid := true; end; |
PS: evtll könnte es auch mit messages klappen, dann müsstest du bei jedem thread-durchlauf Application.ProcessMessages() aufrufen;
Moderiert von
Klabautermann: Code- durch Delphi-Tags ersetzt