Ruby - Ausführung abgelaufen

7

Ich habe einen Ruby-Code wie folgt:

%Vor%

Und ich bekomme Log als:

%Vor%

Ich möchte Block erneut ausführen, bis es erfolgreich ist.

Wie kann ich es tun?

    
Sayuj 14.06.2011, 06:51
quelle

1 Antwort

24

Ich werde meinen Kommentar ein wenig erweitern. Sie können retry verwenden, um zum begin zurückzukehren:

%Vor%

Das wird solange versuchen (und Protokollierungsfehler), bis es funktioniert oder Sie es manuell beenden. Das ist aber wahrscheinlich nicht das, was du willst, denn ein kleiner Fehler wird dich in eine Endlosschleife schicken. Ein einfacher Weg, um es sagen zu lassen, sagen wir 10 mal und dann aufgeben:

%Vor%

So etwas wird es ein paar Mal versuchen und dann aufgeben. Sie können auch einen sleep Aufruf vor dem retry einfügen. Wenn Sie vor dem nächsten Versuch ein wenig warten oder die Ausnahme untersuchen möchten (möglicherweise mit mehreren rescue Blöcken), um zu entscheiden, ob Sie sofort aufgeben sollten, warten Sie und versuchen Sie es erneut oder wiederholen Sie den Vorgang sofort.

    
mu is too short 14.06.2011, 08:16
quelle

Tags und Links