Thema: Delphi Query abbrechen

Einzelnen Beitrag anzeigen

choose

Registriert seit: 2. Nov 2003
Ort: Bei Kiel, SH
729 Beiträge
 
Delphi 2006 Architect
 
#9

Re: Query abbrechen

  Alt 8. Jan 2004, 10:03
Könntest Du nicht den Thread mit einer Eigenschaft FreeOnReady ertstellen, so dass der Thread freigegeben wird, wenn er sich beendet (Execute ist durchlaufen), was exakt dem Verhalten von FreeOnTerminate entspricht, darüber hinaus aber den Thread auch sofort freigibt, falls er bereits durchlaufen ist?
Also etwas der Art
Delphi-Quellcode:
myThread.WaitFor;
// Query is ready
DoSthWithResult(myThread);
myThread.FreeOnReady:= True; // implicit call of myThread.Free
// always set freed reference to nil ;)
myThread:= nil;
Auf diese Weise könntest Du im Fall eines Abbruchs, den laufen Thread einfach "vergessen" und sofort einen neuen starten:
Delphi-Quellcode:
// "forget" or free current query
myQueryThread.FreeOnReady;
// create new query thread
myQueryThread:= TQueryThread.Create(AQueryString);
gruß, choose
  Mit Zitat antworten Zitat