![]() |
Eventdauerfeuer??
Hallo Leute,
ich habe ein Verständnisproblem im Zusammenhang mit Events. Angenommen ich habe den folgenden Event
Delphi-Quellcode:
und starte Ihn in so kurzen Abständen, daß die Behandlungsroutine noch nicht fertig ist, bevor der neue Event ausgelöst wird. Sind dann die Daten aus dem ersten Aufruf futsch,wartet das zweite Event auf das Ende von ersten Event?? Ich verstehe es nicht ganz.Wird eine Queue verwendet???
type TJobsDoneEvent = procedure (NumberOfErrors:ShortInt) of object;
Danke für die Aufklärung. |
Re: Eventdauerfeuer??
Wie rufts du das Event auf?
Mit einem neuen Thread, ohne einem neuen Thread oder mit einer Windows-message? Denn wann sollte sich das Dauerfeuer ergeben? |
Re: Eventdauerfeuer??
Hallo Allexander,
der Aufruf erfolgt so
Delphi-Quellcode:
if Assigned(OnJobResult) then OnJobResult(index);
|
Re: Eventdauerfeuer??
Ja ja, das ist mir klar, aber das beantwortet meine Frage nicht:
Zitat:
Delphi-Quellcode:
aufgerufen? Und wie diese Procedure/Function aufgerufen?
if Assigned(OnJobResult) then OnJobResult(index);
|
Re: Eventdauerfeuer??
HAI ozz,
versuchs sichtbar zumachen: also schleifen zähler nach außen anzeigen (bitte ohne debugger, den der hat einen eigenen thread!) und ohne neuen Thread was Alexander fragte geht das alles schön nacheinander... |
Re: Eventdauerfeuer??
Hallo Alexander, hallo yörsch
Danke für die Hilfe. Also der Event wird innerhalb einer sync- Funktion ausgelöst. Die Behandlungsroutine dazu ist jedoch im Hauptprogramm. |
Re: Eventdauerfeuer??
Also das beantortet die Frage immer noch nicht ganzs so richtig. :roll:
Im Hauptprogramm? Heißt das jetzt im selben Thread oder nicht!!!? Gruß Alexander PS: Was ist eine sync-Function? :duck: Ist das irgendeine spezielle Art die ich kennen sollte, oder ist das einfach eine Synchronisations Funktion (also beschreibt die Aufgabe der Funktion)? |
Re: Eventdauerfeuer??
Hallo Alexander,
Danke das du so hartnäckig bist. Der Aufruf erfolgt innerhalb der Sync Funktion, die nicht im Thread ist. Die Behandlungsroutine ist im Formular, also auch nicht im Thread. |
Re: Eventdauerfeuer??
Zitat:
Zitat:
Oder bist du dir absolut sicher, dass es einen eigenen Thread hat, weil du mit TThread abreitest? Falls du dir nicht sicher bist, kann ich vielleicht den Code dazu sehen (und bitte nicht allzu sparsam), oder beschreibst du endlich mal ausführlich wie, wann warum, und wo diese synch-Funktion aufgefrufen wird. Und meine Frage steht noch im Raum: Zitat:
PS: Sämtlichen ärgelichen Unterton will ich entschuldigen. PPS: Wenn du willst, dass irgendjemand deine Frage beantwortet, solltest du genügend Infos geben, damit dies überhaupt möglich ist. :roll: Oder zumindest nachher ausführlich auf die Fragen antworten :!: :evil: PPPS: Und würde ich nicht immer so eine nette Mail bekommen, hätte ich das Thema auch schon längst "vergessen". |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz