Wie behandelt man das HttpWebRequest-Timeout in F # Async.Parallel

8

Ich habe gerade eine lange Zeit damit verbracht, mir die Zähne zu zerbrechen, warum dieser Code für einige URLs "hängte":

%Vor%

Nachdem ich herausgefunden hatte, welche der 3000 URLs hängen geblieben war, habe ich gelernt, dass AsyncGetResponse keine Notiz von HttpWebRequest.Timeout nimmt. Ich habe ein wenig gesucht, was Vorschläge zum Einbetten der asynchronen Anfrage in einen Thread mit einem Timer bringt. Das ist großartig für C #, aber wenn ich 3000 davon über Async.Parallel |> Async.RunSynchronously laufen lasse, was ist der beste Weg, um mit diesem Problem umzugehen?

    
Benjol 19.04.2011, 08:02
quelle

1 Antwort

7

Ich habe das nur grob getestet, aber es sollte das richtige Verhalten haben:

%Vor%

Rufen Sie in Ihrem Code req.AsyncGetResponseWithTimeout() anstelle von req.AsyncGetResponse() auf.

    
ildjarn 19.04.2011, 14:06
quelle

Tags und Links