Forum: Netzwerke
Delphi
by Sir Rufo,
25. Sep 2012
Weil es unorthodox aussieht und hier ja auch schon Diskussionen geführt worden sind, dass Delphi da inkonsequent wäre (im Vergleich zu anderen Sprachen). ;)
Forum: Netzwerke
Delphi
by Sir Rufo,
25. Sep 2012
Nein, das ist kein schlechter Stil.
Die Methode SendDataPacket soll vom Thread aufgerufen werden können, aber nicht vom Rest der Welt.
Bei einigen Programmiersprachen habe ich diese Möglichkeit nicht und muss diese Methode tatsächlich als public deklarieren, obwohl ich das gar nicht möchte.
Delphi bietet mir die Möglichkeit (protected vs. strict protected) warum sollte man das dann nicht...
Forum: Netzwerke
Delphi
by Sir Rufo,
24. Sep 2012
Folgendes Szenario:
Der Thread holt sich über die LockList die Transfer-Elemente und kopiert diese. Dann gibt er diese LockList wieder frei. Genau zu diesem Zeitpunkt wird der Thread terminiert (FWaitEvent wird gesetzt und der Thread auf Terminated). Jetzt sind aber keine Elemente in der Liste, also setzt der Thread das FWaitEvent zurück und wartet darauf, dass das Event kommt (unendlich).
Der...
Forum: Netzwerke
Delphi
by Sir Rufo,
24. Sep 2012
Ich habe auch nicht gesagt, dass das nicht funktioniert, es gibt aber ein ganz schmales Zeitfenster, wo das nicht funktioniert.
Das doofe daran ist, wenn man es gar nicht gebrauchen kann, dann schlägt das zu (Murphy) ;)
Hier mal mein Vorschlag für den Händler:
TIOHandler = class
private
FSendQueue, FWaitQueue : TQueue<TdxIDTPOTransfer>;
...
protected