Delphi 7 Synapse nie zmienia TimeOut.

Delphi 7 Synapse nie zmienia TimeOut.
X3
  • Rejestracja:ponad 9 lat
  • Ostatnio:2 miesiące
  • Postów:308
0

Mam taki kod:

Kopiuj
procedure GetIPThreadProc(Param : Pointer); stdcall;
var
  url, ip : string;
  DocStr : string;
  Lista : TStringList;
  I : Integer;
  HTTP : THttpSend;

s : TStream;
code : Integer;
begin
  Lista := TStringList(Param);
  url := 'http://%s/stalker_portal/c/';

  HTTP :=ThttpSend.Create;

    with HTTP do
    begin
      Protocol := '1.1';
      UserAgent := '';
      KeepAlive := True;
      TimeOut := 300;
      HTTPMethod('HEAD',Format(url, [ip]));
      Free;
    end;

Cokolwiek bym nie przydzielił TimeOut, to zawsze Synapse swoje odczeka. Czy można to jakoś zmienić? Zależy mi na krótkim Timeout. Być może istnieje inna możliwość?

kimikini
  • Rejestracja:ponad 14 lat
  • Ostatnio:około 9 godzin
0

dlaczego to jest w dziale python

X3
  • Rejestracja:ponad 9 lat
  • Ostatnio:2 miesiące
  • Postów:308
0

Sorki. Nie zwróciłem uwagi. Mój błąd. Ale czekam na poradę. Chcę przeskanować trochę rzeczy, a mały timeout by mi pomógł.

edytowany 1x, ostatnio: xenix33
KA
  • Rejestracja:prawie 20 lat
  • Ostatnio:mniej niż minuta
  • Lokalizacja:Gorlice
0

Właściwość TimeOut nie odpowiada za to to jest maksymalny czas oczekiwania na kolejne bajty odpowiedzi serwera tobie jest potrzebne coś w stylu connecttimeout ale
http://www.ararat.cz/synapse/doku.php/public:howto:connecttimeout


Nie odpowiadam na PW w sprawie pomocy programistycznej.
Pytania zadawaj na forum, bo:
od tego ono jest ;) | celowo nie zawracasz gitary | przeczyta to więcej osób a więc większe szanse że ktoś pomoże.
0
kAzek napisał(a):

Właściwość TimeOut nie odpowiada za to to jest maksymalny czas oczekiwania na kolejne bajty odpowiedzi serwera tobie jest potrzebne coś w stylu connecttimeout ale
http://www.ararat.cz/synapse/doku.php/public:howto:connecttimeout

Chodzi mi dokładnie o zmniejszenie czasu oczekiwania na odpowiedź serwera., po upływie którego synapse rozłącza się.

KA
  • Rejestracja:prawie 20 lat
  • Ostatnio:mniej niż minuta
  • Lokalizacja:Gorlice
1

No to tak jak w linku który podałem wyżej choć sami napisali ze to nie jest ładne rozwiązanie ale powinno działać:

Kopiuj
      //...
      TThread.CreateAnonymousThread(procedure
      begin
        Sleep(300); //timeout
        Sock.CloseSocket;
      end).Start;
      HTTPMethod('HEAD',Format(url, [ip]));
      //...

Nie odpowiadam na PW w sprawie pomocy programistycznej.
Pytania zadawaj na forum, bo:
od tego ono jest ;) | celowo nie zawracasz gitary | przeczyta to więcej osób a więc większe szanse że ktoś pomoże.
X3
  • Rejestracja:ponad 9 lat
  • Ostatnio:2 miesiące
  • Postów:308
0

Dzięki. Sprytne. Ale znalazłem coś takiego. Tylko nie wiem , co wyrzucić.

Kopiuj
Sock.SocksTimeout:=300;
Sock.ConnectionTimeout:=300;
Sock.SetTimeout(300);
Sock.NonblockSendTimeout:=500;
Sock.NonBlockMode:=true;
TimeOut := 300;

Jest jeszcze KeepAliveTimeout.

edytowany 1x, ostatnio: xenix33
KA
  • Rejestracja:prawie 20 lat
  • Ostatnio:mniej niż minuta
  • Lokalizacja:Gorlice
1

Sam sobie popróbuj może ConnectionTimeout jeżeli działa tak jak ja zakładam wystarczy nie wiem to chyba jakaś nowa właściwość. Ja dawno nic nie robiłem z Synapse(wolę Indy) dawniej chyba jej nie było.


Nie odpowiadam na PW w sprawie pomocy programistycznej.
Pytania zadawaj na forum, bo:
od tego ono jest ;) | celowo nie zawracasz gitary | przeczyta to więcej osób a więc większe szanse że ktoś pomoże.
X3
  • Rejestracja:ponad 9 lat
  • Ostatnio:2 miesiące
  • Postów:308
0

Tak. Wystarczy Sock.ConnectionTimeout:=300; Dzięki.
Jak zamknąć temat?

P.S.
Trzeba Synapse pobrać stąd:
https://sourceforge.net/p/synalist/code/HEAD/tree/trunk/

edytowany 3x, ostatnio: xenix33
KA
Tematów na tym forum się nie zamyka.
flowCRANE
Wątki zakańcza się w ten sposób, że plusuje się wszystkie pomocne posty (choć lepiej robić to na bieżąco), a przy tym zawierającym rozwiązanie zaznacza się fajeczkę. Zamknąć wątek może wyłącznie moderator, ale to robi się tylko w wyjątkowych sytuacjach.
WL
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Postów:1083
0
kAzek napisał(a):

Ja dawno nic nie robiłem z Synapse(wolę Indy) dawniej chyba jej nie było.

Ciekawość ;-)
Dlaczego wolisz INDY?
Wielkie, to,pseudo inteligentne, ciężko się tego dobrze nauczyć, mało wiadomo co tam się dzieje - za dużo magi.
Czyli dokładnie odwrotnie jak z Synapse, imo.

Ja odwrotnie, jeśli tylko mogę korzystam z Synapse.

KA
  • Rejestracja:prawie 20 lat
  • Ostatnio:mniej niż minuta
  • Lokalizacja:Gorlice
0

@wloochacz dlatego, że Indy jest regularnie rozwijane i wieloplatformowe, nie ma np. problemu z obsługą GZIP, nie wiem jak teraz ale kiedyś nie było wsparcia dla multipart/form-data itd? W Synapse dopiero niedawno zapodali domyślną obsługę przekierowań. Indy jest duże i niby jak go używasz pliki wykonywalne przybierają na wadze ale to nie ma teraz wielkiego znaczenia a ma prawie wszystko a przy tym bardzo proste w użyciu.


Nie odpowiadam na PW w sprawie pomocy programistycznej.
Pytania zadawaj na forum, bo:
od tego ono jest ;) | celowo nie zawracasz gitary | przeczyta to więcej osób a więc większe szanse że ktoś pomoże.
edytowany 1x, ostatnio: kAzek

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.