Wolfgang Wiese: alarm() und LWP: timeout()

Beitrag lesen

Kein Thread? Hm, dann existiert z.B. http://www.ics.uci.edu/pub/websoft/libwww-perl/archive/1998h1/0036.html auch gar nicht...

Seltsames Forum. Als ich bei obigen Link auf "Next Message" ging, war da
irgenteine andere Message und unter Thread war nur ein Index, aber nicht das was
ich als Thread betrachte (Thread=Alle Nachrichten zu einem Thema)
Aber auch die Antwort von Gisle Aas ist bei mir nicht hilfreich, weil ich das bereits wußte
und garnicht wissen wollte.

Was ist daran ungewoehnlich ein Programm zu haben, welches ein eigens Timeout hat
und das dennoch auf LWP zugreifen möchte, ohne das die eigne Timeoutfunktion
in Mitleidenschaft gezogen wird?

Deine Begründung fand ich nur sehr merkwürdig. Bei meinem flüchtigen lesen klang es stark

danach, dass du LWP selber 'outtimen' wolltest, statt die eigene timeout() methode zu benutzen.

Nein!

Also nochmal:
LWP nutzt in der am weitesten verbreiteten Version alarm().
Mein Programm, welches LWP nutzt, benutzt aber selbst schon alarm() für andere
Zwecke.
Ich will aber auch den timeout() von LWP nutzen, der eben auf alarm() zugreift.
Da der Inhalt meines alarms nicht gerettet wird, wird der LWP-timeout mein alarm()
disablen, wenn nicht gar sinnlos machen.

Ich möchte ja die Timeout-Methode von LWP nutzen....aber gleichzeitig brauch ich
alarm() noch für andere Programmteile.

Ok, billige Lösung 1: Neues LWP installieren. Folge: Mein Kunde kriegt ne Krise :))
Lösung 2: LWP an dieser Stelle ändern und Inhalt des alarm()'s retten. Ist einfach zu machen, aber
auch dann mach ich LWP neu, hab keine Unterstuetzung und koennte eh gleich LWP neu installieren.
Lösung 3: Nicht LWP verwenden, sondern die Socket-Kommunikation selbst machen. Auch nicht schwer, aber
genauso sinnlos wie 2), da da nur das Rad neu erfunden wird und ne neue Insellösung gemacht.
Lösung 4: Ich ruf mit mein Handy die Uhrzeit-Auskunft der Teuerkom an, lege es direkt neben
mein Kopf und leg mich damit schlafen. Wenn ich aufwache hab ich meine Probleme
bestimmt vergessen :)
Lösung 5: (So hab ich es jetzt gemacht): timeout() auf FALSE und use_eval() auf FALSE. Dann steuer ich den inneren
Timeout (den des LWPs) garnicht mehr, aber kann durch meine andxeren Subroutinen doch
noch abbrechen, auch wenn eine URL bis ultimo brauchen könnte.

Hast du eine bessere Lösung?

Ciao,
  Wolfgang