Einzelnen Beitrag anzeigen

Benutzerbild von Tonic1024
Tonic1024

Registriert seit: 10. Sep 2003
Ort: Cuxhaven
559 Beiträge
 
RAD-Studio 2009 Ent
 
#1

Thread mit Query abbrechen

  Alt 17. Okt 2003, 10:42
Moin...

Ich habe folgendes verbrochen...

Ich habe eine DLL die die Zugriffsschicht auf meine Datenbank darstellt. Ich binde die DLL dynamisch ein, heisst nicht sofort beim Programmstart sondern immer dann, wenn die Funktion grade benötigt wird. Ich hole allerhand Daten ab, unter Anderem auch ein 2dimensionales Array, dass echt umfanreich ist. Da speziell für dieses Array eine Übertragungszeit (Netzwerkbedingt) von bis zu eineinhalb Minuten erfordelich ist lasse ich die Abfrage in einem Thread laufen.

Wie einige ungeduldige User nun mal so sind, möchten sie natürlich einen Abbrechen-Butten haben (ist ja auch sinnvoll). Ich habe daher einfach mal probiert den Thread mit Suspend und Terminate zu beenden. Klappt auch wunderbar.

Nun mein Problem. Wenn ich jetzt eine neue Abfrage starte läuft der Tread nicht mehr an. Ich vermute, dass der Zwangsabbruch des Zugriffs über die DLL jede Menge Datenmüll erzeugt. Aber wie kann ich die DLL kontrolliert vorzeitig beenden und aufräumen?

Kann ich überhaupt zur selben Zeit ein zweites Mal auf die DLL Zugreifen, und dort eine Art Flag kippen, dass sagt "Halt, Stop - Aufhören"? Ich habe in der DLL mal einen Datensatz-Zähler mitlaufenlassen und versucht diesen mit einem Zweiten Zugriff - also als der Erste noch lief - abzufragen, aber da kam nur Datenmüll raus.

Für Hinweise - Ich will keinen fertigen Code - währe ich echt dankbar...

Bis denne...
Der frühe Vogel fängt den Wurm, richtig.
Aber wird nicht auch der frühe Wurm vom Vogel gefressen?
  Mit Zitat antworten Zitat