Mercurial > hg > config
annotate python/example/retry.py @ 849:81d2f5c20ceb
python 3 string compat
author | Jeff Hammel <k0scist@gmail.com> |
---|---|
date | Sun, 10 Dec 2017 09:49:52 -0800 |
parents | 88f19ebb43ea |
children |
rev | line source |
---|---|
758 | 1 def retry(f, retries=5, args=(), kw=None, exceptions=()): |
2 | |
3 kw = kw or {} | |
4 for index in range(retries): | |
5 try: | |
6 return f(*args, **kw) | |
7 except Exception as e: | |
8 if isinstance(e, exceptions): | |
9 print ("something bad happen") | |
10 else: | |
11 raise | |
12 raise RetryTimeout("Tries a bunch of times :(") |