Skip to content

Instantly share code, notes, and snippets.

@danveloper
Last active June 23, 2016 04:38
Show Gist options
  • Save danveloper/f01525aa649f76854a0212dc5aec6c75 to your computer and use it in GitHub Desktop.
Save danveloper/f01525aa649f76854a0212dc5aec6c75 to your computer and use it in GitHub Desktop.
Fibonacci Backoff Strategy
import groovy.transform.Memoized
class FibBackoff {
int tryNum
void backoff() {
tryNum = fib(tryNum)
sleep(tryNum * 1000)
}
@Memoized
private int fib(n) {
if (n < 2) return 1
return fib(n - 1) + fib(n - 2)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment