Hallo,
ich mal wieder
Und zwar wenn ich mehrere Threads starte zbs. 5.
Delphi-Quellcode:
for I := 1 to 5 do
BeginThread(nil,
0,
Addr(Execute),
nil,
0,
id1);
und in dem Threads zbs. das drin steht:
Delphi-Quellcode:
procedure Execute;
begin
Form1.Memo1.lines.add('start ');
Form1.Memo1.lines.add('#');
end;
Dann stehen 5 "#" in dem Memo drin, so wie es sein soll.
Mach ich aber so:
Delphi-Quellcode:
procedure Execute;
begin
Form1.Memo1.lines.add('start ');
sleep(100); // Oder irgendwas anderes wo ein bisschen Zeit beansprucht
Form1.Memo1.lines.add('#');
end;
kommen manchmal nur 1 "#" in dem Memo oder manchmal auch 2.
Also beendet der Thread nicht richtig?
Kann mir bitte jemand einen kleine Denkanstoß geben, oder den Grund dafür nennen ?
Danke schonmal für's lesen
Gruss,
MArc