Einzelnen Beitrag anzeigen

DocE

Registriert seit: 25. Mär 2004
108 Beiträge
 
#5

Re: Indy TIdHTTPServer OnGet: Aufruf von Funktionen mit Para

  Alt 29. Jun 2005, 21:48
Oh, "CriticalSection" sagt mir jetzt nicht so viel. Müßte ich mich nochmal umschauen.

Werden denn diese Paramter (z.B. im private Bereich des Hauptformulars deklariert), nicht von allen OnCommandGet-"Threads" benutzt? So dass eine zweite (fast zeitgleiche) Anfrage an den Server zu Komplikationen führen würde?

Moment, ich probiere das gerade mal aus...

Gibt Probleme. Habe folgenden Code getestet:


Delphi-Quellcode:
private
    TempString: string;
    TempCounter: Integer;

(...)

procedure TForm1.HTTPS2CommandGet(AThread: TIdPeerThread;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin

  inc(TempCounter);
  TempString := inttostr(TempCounter);
  Sleep(5000); // um zeitgleiche Zugriffe zu simulieren, 2. Aufruf in dieser Zeit
  AResponseInfo.ContentText := TempString;

end;
Hier erhalte ich bei beiden Browsern die Rückgabe "2". Da ja der zweite Thread (2 Sekunden später gestartet) die Variable TempString in der Wartezeit auf 2 setzt.

MfG
..DocE
  Mit Zitat antworten Zitat