Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi IdHTTPServer OnCommandGet Threading (https://www.delphipraxis.net/208500-idhttpserver-oncommandget-threading.html)

Hobbycoder 6. Aug 2021 13:02

IdHTTPServer OnCommandGet Threading
 
Hi,

ich hab mal eine ganz blöde Frage. Ich habe irgendwo gelesen, dass der Event "OnCommandGet" in einem eigenen Thread abläuft, damit gleichzeitig laufende Abfragen sich nicht blocken.
Ist das bei Indy 10 der Fall? In den Beispielen, die ich im Internet finde, gibt es im der Methode zu dem Event immer den Paramter AThread.
In meiner Version gibt es als Parameter nur AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo . Komme ich da irgendwie an eine Thread-ID?

himitsu 6. Aug 2021 13:32

AW: IdHTTPServer OnCommandGet Threading
 
Jede Connection von einem Client zum Server läuft mit je einem Context in einem eigenen Thread ab.

TThread.ThreadID oder GetCurrentThreadId
bzw., wenn man unbedingt ein TThread-Object braucht, dann TThread.Current, aber Achtung, es ist nicht "DIE" wirklich laufende TThread-Instanz (falls es über die RTL erstellt wurde), sondern ein neuer "Dummy", welcher bloß mit dem Thread-Handle verknubbelt ist.

[EDIT] Das mit dem Current haben'se repariert.

Hobbycoder 6. Aug 2021 13:40

AW: IdHTTPServer OnCommandGet Threading
 
Danke für die Info :-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz