backoff.go 189 B

123456789101112131415
  1. package timeutil
  2. import (
  3. "time"
  4. )
  5. func ExpBackoff(prev, max time.Duration) time.Duration {
  6. if prev == 0 {
  7. return time.Second
  8. }
  9. if prev > max/2 {
  10. return max
  11. }
  12. return 2 * prev
  13. }