Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]7532[/thread]

LWP-UserAgent >> Problem + PAR!

Leser: 2


<< >> 5 Einträge, 1 Seite
master
 2005-12-08 14:22
#60793 #60793
User since
2003-10-20
610 Artikel
BenutzerIn
[default_avatar]
Folgende internetverbindung habe ich :
Mal geht sie extrem langsam... 1B/s
mal fällt der router aus, oder DNS fehler.. also schlimme zustände...

Meine Softwäär soll das nun meistern... bzw. eine datei runterladen.. aber wenn sie nix von der gegenstelle hört abbrechen.. oder wenn es zulange dauert..

Halt nein nicht "abbrechen" sondern einfach "weitermachen"


1. Der Timeout funktioniert nicht
2. Blockiert es die ganze anwendung...

unkompiliert gehts(naja es blockiert nicht)..
nach PAR nicht richtig.....


Ich lade mit diesem modul eine Datei runter...

nun blockiert es aber de software.. alles steht still nichts geht mehr, wenn das Netzwerk sehr stark ausgelastet ist oder mit der DNS was nicht stimmt dann gibts sogar einen Fehler.

Ich will jedoch nur, dass das datei runtergeladen wird.
Sollte es zulange dauern oder irgendwelche fehler auftreten, dann soll mit dem runterladen, verbindungsaufbau.. wie auch immer, abgebrochen werden....

So in der Art:
Code: (dl )
1
2
3
if  (LWP-Methode  erfolgreich und datei unten.. dann mach weiter....   ||  Error... mach weiter...)

weiter:




Hier der code.. wie gesagt.. die Tk-Anwendung ..
Wird angehalten.. sie sollte nach 10 sekunden weiter machen.. aber nichts passiert..
sie blockiert sehr sehr sehr lange.....
und die CPU ist 100% ausgelastet.. und das FENSTER
$mw kann man nicht bewegen....


Code: (dl )
1
2
3
4
5
use  LWP::UserAgent;
$ua = LWP::UserAgent->new(timeout=>'10'); $ua->timeout(10);

my $response = $ua->get($ziel);
if ($response->is_success) { return $response->content; } else {return false;}
$i='re5tsFam ^l\rep';$i=~s/[^a-z| ]//g;$\= reverse "\U!$i";print;
master
 2005-12-08 15:15
#60794 #60794
User since
2003-10-20
610 Artikel
BenutzerIn
[default_avatar]
Ist Alarm zuverlässig??

Im Prinzip will ich ganz einfach, einen radikalen Timeout

Oder gibts einen Timer der einfach die Ausführungstzeit einer SUB prüft... z.B. wenn sie Zulange dauert sie abbricht....
$i='re5tsFam ^l\rep';$i=~s/[^a-z| ]//g;$\= reverse "\U!$i";print;
esskar
 2005-12-08 15:27
#60795 #60795
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
hast du mal versucht zu forken und in dem dadurch entstanden Kind die datei runterzuladen? dadurch hängt die datei dann nicht... weiß aber nicht, ob PAr + fork funktioniert / funktionieren kann (speziell unter windows)
master
 2005-12-08 15:34
#60796 #60796
User since
2003-10-20
610 Artikel
BenutzerIn
[default_avatar]
wenn ich da forke dann, dann erzeugt es ein 2. fenster..
zudem gabs glaub auch fehler... hatte es schonmal probiert...

aber nichts destotrotz.. selbst wenn ich einen 2. prozess mache, ich brauche einen Timeout, da nicht nur fehlverbindungen usw. sondern auch zu niedriger speed

- Fehler
- connection ok, aber zu 1Byte/s z.B. dann soll es auch abbrechen...



ps. ich versuche den fork trotzdem (noch)mal..
$i='re5tsFam ^l\rep';$i=~s/[^a-z| ]//g;$\= reverse "\U!$i";print;
master
 2005-12-08 15:40
#60797 #60797
User since
2003-10-20
610 Artikel
BenutzerIn
[default_avatar]
fork kommt unkompliert schon mal nicht gut...



alarm geht nun.. und reicht aus...(hoff ich mal)\n\n

<!--EDIT|master|1134052855-->
$i='re5tsFam ^l\rep';$i=~s/[^a-z| ]//g;$\= reverse "\U!$i";print;
<< >> 5 Einträge, 1 Seite



View all threads created 2005-12-08 14:22.