Forum: Programmieren allgemein
by Poolspieler,
13. Mai 2013
Hallo,
wenn Du keine TThreadList hast, dann wirst Du ja wahrscheinlich im onClose-Ereignis des Hauptfensters Deine Threads (oder die Klasse drüber) freigeben.
Und dort wirst Du ja sowas wie:
meinThread.free;aufrufen.
--> Und die destroy-Routine wartet so lange, bis der Thread beendet ist.
Und im Thread steht ja wahrscheinlich sowas in der Art:
procedure TmeinThread.Execute;
begin
...
Forum: Programmieren allgemein
by Poolspieler,
11. Mai 2013
Hallo Sebastian,
es lag damals an einer nicht freigegebenen TThreadlist.
Ich habe dann ein Free- und Clear-Statement in den Destructor eingefügt.
Dann war das Problem behoben.
(klingt einfach, hat mich aber einige Wochen gekostet...)
Viele Grüße,
Poolspieler
Forum: Programmieren allgemein
by Poolspieler,
17. Okt 2011
Hallo zusammen,
ich habe (nach Telefonant mit Support) Delphi XE heruntergeladen und installiert.
--> Ergebnis: Auch hier das selbe Verhalten. :evil:
Kann sich irgend jemand vorstellen, an was das liegen kann bzw. wie man die Ursache aufspüren kann? :roll:
Was ist an Delphi2009 anders? Warum tritt der Fehler da nicht auf????
Ich bin für jede Hilfe dankbar!
Forum: Programmieren allgemein
by Poolspieler,
17. Okt 2011
Hallo jbg,
vielen Dank für Deine Antwort! Du hast Recht! Es werden noch 6 weitere Threads angezeigt, die aber alle den Status "Unbekannt" haben. Ich habe auch keine Möglichkeit gefunden, einen der Threads anzuhalten/zu pausieren oder ähnliches.
Kannst Du mir vielleicht noch einen Tip geben, wie man das Problem einkreisen kann? :roll: Ich habe mal zwei Screenshots der Delphiumgebung angehängt......
Forum: Programmieren allgemein
by Poolspieler,
16. Okt 2011
Hallo hathor,
danke für Deine Antwort.
Ich habe nach den beiden Begriffen gesucht. PostMessage habe ich nicht gefunden
SendMessage gibt es schon. Es wird verwendet, um ein Richedit nach ganz unten zu scrollen:
SendMessage(protokoll_memo.Handle, WM_VSCROLL, SB_BOTTOM, 0); // nach ganz unten Scrollen
Allerdings bin ich mir relativ sicher, dass diese Funktionen nicht während des Beendens des...
Forum: Programmieren allgemein
by Poolspieler,
16. Okt 2011
Hallo,
seit ich XE2 benutze, beendet sich meine Anwendung (die aus mehreren Threads besteht) manchmal nicht.
Die CPU-Last geht nach klicken auf das "Beenden-Kreuz" auf 100% für den aktiven CPU-Kern.
Wenn ich in der Entwicklungsumgebung auf Pause drücke, dann erscheint folgender Assembler-Code:
ntdll.RtlUserThreadStart:
770701C4 89442404 mov ,eax
770701C8 895C2408 mov ,ebx...