Danke, das sieht gut aus, geskill, aber ich möchte eigentlich keine externen Komponenten benutzen.
Es sieht ungefähr so aus:
Delphi-Quellcode:
type
T = record
Str: string;
Use: Boolean;
end;
private
A: Array[0..5] of T;
procedure TThread.Add(const S: string);
begin
with A[GetFreeField] do
begin
Str := S;
Use := True;
end;
end;
procedure TThread.Execute;
begin
while not Terminated do
begin
for I := Low(A) to High(A) do
if Use then
begin
//hier werden nur Felder von A[I] gelesen und geändert
end;
Sleep(1);
end;
end;
Add wird aus dem Hauptthread aufgerufen. Use ist natürlich anfangs immer False und wird vom Thread auch irgendwann wieder auf False gesetzt. Das sollte doch sicher sein?