Forum: Win32/Win64 API (native code)
by CCRDude,
31. Jul 2013
Delphi gibt den Thread nur dann frei (nicht bei Programmende sondern Threadablaufende), wenn dieser FreeOnTerminate gesetzt hat.
Warum speicherst Du nicht die Thread-Objekte selber in der Liste?
Forum: Win32/Win64 API (native code)
by CCRDude,
24. Jul 2013
Hmm... das Problem verstehe ich nicht ganz.
var a: array of TMyThread;
begin
SetLength(a, 4);
end;
geht nicht unter D7? Ansonsten... TList, gibt es das schon unter D7? Mindestens eine TStringList gibt es da, mit Objekten an jeder Zeile, als unschönen Workaround, wobei ich glaube, dass es eigentlich auch die anderen Dinge (dynamische Arrays und TList) geben dürfte.
Forum: Win32/Win64 API (native code)
by CCRDude,
24. Jul 2013
Das gäb's aber immer :)
Ohne Threads würde das Hauptfenster nicht reagieren, das verleitet Benutzer zum Abschießen...
Bei jedem Thread, den Du implementierst, musst Du diese Situation berücksichtigen.
Als simplen Workaround (der aber nicht so schön wäre wie die von jaenicke genannte Queue) könntest Du ein Hilfsprozess beilegen, den Du für jeden Kopierjob startest. Der läuft weiter,...
Forum: Win32/Win64 API (native code)
by CCRDude,
24. Jul 2013
Selber Kopieroperation als getrennten Thread abspalten?