Einzelnen Beitrag anzeigen

jensw_2000
(Gast)

n/a Beiträge
 
#4

Re: Eventhandler für asynchron arbeitendende Objekte

  Alt 11. Jan 2008, 22:19
Ich habe nun eine Antwort von dem API Lieferanten.
Alle Eventhandler und Callbacks werden dort synchronisiert aufgerufen. Die API ist also threadsicher.

Bleibt nur noch die Frage wie Delphi arbeitet ...

IMHO können alle Events nur rein seriell abgearbeitet werden, da alle Events im HauptThread meiner Applikation behandelt werden.

Das Ablaufschema sollte also immer so aussehen:

Delphi-Quellcode:
> OnIrgendEinEvent Start
>> EineSubProcedure 1
>> EineSubProcedure 2
>> EineSubProcedure 3
> OnIrgendEinEvent Ende

> OnIrgendEinEvent Start
>> EineSubProcedure 1
>> EineSubProcedure 2
>> EineSubProcedure 3
> OnIrgendEinEvent Ende

> OnIrgendEinEvent Start
>> EineSubProcedure 1
>> EineSubProcedure 2
>> EineSubProcedure 3
> OnIrgendEinEvent Ende
und nie so:

Delphi-Quellcode:
> OnIrgendEinEvent Start
>> EineSubProcedure 1
>> EineSubProcedure 2
> OnIrgendEinEvent Start
>> EineSubProcedure 3
>> EineSubProcedure 1
>> EineSubProcedure 2
> OnIrgendEinEvent Ende
>> EineSubProcedure 2
>> EineSubProcedure 3
> OnIrgendEinEvent Ende
Fakt ist, dass ich die Eventbehandlungen so schlank wie möglich halten muss, damit ich mich auf den Status der Callhandler verlassen kann. Für länger laufende Prozeduren werde ich besser an Alzaimars Workerthread bemühen ...


Danke.

Schöne Grüße,
Jens
  Mit Zitat antworten Zitat