Forum: Die Delphi-IDE
by himitsu,
25. Okt 2011
Ein mittelschwerer Fall:
var
S: String;
i, i2: Integer;
C, C2, C3: Cardinal;
begin
SetLength(S, 10000000);
// CPU hochfahren
for i := 1 to Length(S) do
Forum: Die Delphi-IDE
by himitsu,
25. Okt 2011
Diese Prüfung verhindert aber (primär) nicht das Abstürzen.
Der Fehler ist dann ja so oder so enthalten.
OK, man kann auch mal "erfolgreich" auf einen nichtexistierenden Index zugreifen, ohne daß es gleich verreckt.
Forum: Die Delphi-IDE
by himitsu,
25. Okt 2011
Das Problem ist, daß zusätzliche Prüfungen den Code schon etwas ausbremsen können (wenn sie sehr oft vorkommen).
Forum: Die Delphi-IDE
by himitsu,
25. Okt 2011
Ach so, du führst also eine "langandauernde" Aktion aus (klang irgendwie anders) und wenn wärenddessen die Form neu gezeichnet werden müsste, dann passiert das nicht (bis die Aktion fertig ist).
Wie Luckie schon sagte:
- Threads
- oder in angemessenen Abständen Application.ProcessMessages aufrufen, damit angefallende Messages (wozu auch das Neuzeichnen gehört) verarbeitet werden.
(z.B....