Autor Beitrag
alleinherrscher
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Mo 19.06.06 22:04 
In der Indy 7 oder 8 Version wurden bei dem TIdTCPServer.OnExecute ereignis ein TThread als Parameter übergeben.

Damit konnte man synchronisiert zu dem Main VCL Thread eine beliebige Prozedur starten, ohne dass es Fehler gab, und zwar mit:

AThread.synchronize(Procedure)

In Indy10 gibt es aber TidThread nicht mehr, sondern nur noch TidContext.

Jetzt meine Frage:
Wie kann ich also in Indy10 beim OnExecute vom Server eine Procedur synchronisieren?

Liebe Grüße an alle,

Euer Alleinherrscher
alleinherrscher Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Mo 19.06.06 23:48 
Okay, ich hab hier das herausgefunden:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
uses
  IdSchedulerOfThread;

[...]

TIdYarnOfThread(AContext.Yarn).Thread.Synchronize(Procedure of Object);


Mein Problem jetzt nur noch: Was heißt hier Procedure of Object...wie kann ich hier auch eine Procedure einer Klasse übergeben? ->

Es scheint, als können keine Prozeduren mit Parametern aufgerufen werden...warum nicht?

Wie kann man das umgehen...denn ich muss unbedingt Parameter "mitschicken"