ilusm.dev

retry

retry strategies: exponential backoff, jitter, circuit breaker.

Load with: use retry

Quick example

use retry

result = retex(10, "value", "value", "value")
prn(result)

Functions

Functions

retex(fn, mx, base, cap)

Executes. Takes fn, mx, base, cap.

retej(fn, mx, base, cap)

Performs the operation. Takes fn, mx, base, cap.

retln(fn, mx, delay)

Performs the operation. Takes fn, mx, delay.

retcb(thresh, rst_ms)

Performs the operation. Takes thresh, rst_ms.

retcc(cb, fn)

Performs the operation. Takes cb, fn.

retcs(cb)

Performs the operation. Takes cb.

retcr(cb)

Creates a new instance. Takes cb.

Module aliases

These are the public-facing names you call with use retry:

  • retry.exp(fn, mx, b, c)
  • retry.jit(fn, mx, b, c)
  • retry.lin(fn, mx, d)
  • retry.cb(t, r)
  • retry.call(cb, fn)
  • retry.st(cb)
  • retry.rst(cb)

Notes

  • Retry logic - exponential backoff, jitter, max attempts.