yeniden denemek Senaryomun aşağıdaki kodu var ...Yakut kurtarma ve özel kod bloğunu
begin
#Loop to create 1000 emails...
#Loop to send 1000 emails...
rescue Timeout::Error => e
retry_attempts += 1
if retry_attempts < 10
retry
else
puts "Timeout error, deleting emails...".red
logs.puts("Rescued a timeout error...#{e}")
email_ids_all.each do |email_delete|
#delete all email...
end
Sorum retry
aslında "yeniden deneme" gidiyor budur. Komut dosyası bir döngüde 1000 e-posta oluşturduysa ve başka bir döngüde 999 gönderdiyse ve 1000. e-postayı göndermeye karar verdiyse - Hatayla karşılaştığı belirli bir kod satırını yeniden dener mi, döngü başlayacak mı? 1000'inci e-postayla birlikte, tüm döngüyü baştan başlayacak mı yoksa her iki döngüde çalışan komut dosyasının başlangıcında mı başlayacak?
Ruby 1.9.3 kullanıyorum. Senin durumunda eposta döngüler yeniden yayınlanması için tüm kadar
Yararlı bilgiler:
İşte (o döngü sonsuz gibi CTRL-C ile sona) sürekli 7'ye kadar 1 tamsayıları yazdırır hızlı bir örnek, bu. Yardım için teşekkürler. – Luigi
İşte bir döngü içinde 'yeniden deneme' kullanma hakkında gerçekten iyi bir yazı http://blog.mirthlab.com/2012/05/25/cleanly-retrying-blocks-of-code-after-an-exception-in-ruby / – dennismonsewicz