3

Python3 のテナシティ ライブラリの「再試行」ツールの使用に問題があります。 ジェネレーターを使用すると、「再試行」デコレーターが機能しないようです。

私の状況を説明するコードサンプルがあります:

from tenacity import retry, wait_exponential

@retry(wait=wait_exponential(multiplier=1, min=1, max=1))
def test_retry():
print("test retry from tenacity")
for i in range(10):
    if i == 0: raise Exception
    yield i

def gen():
    yield from test_retry()

bar = gen()
for foo in bar:
    print(foo)

例外が発生すると、再試行しません。なぜこれが機能しないのか、誰かが考えていますか?

ありがとう

4

1 に答える 1