C++ retry helper with capped backoff
C++
#include <algorithm>
#include <chrono>
#include <functional>
#include <random>
#include <thread>
bool retry(int attempts, const std::function<bool()>& op) {
std::mt19937 rng{std::random_device{}()};
for (int i = 0; i < attempts; ++i) {
if (op()) return true;
std::chrono::milliseconds base = std::chrono::milliseconds(100) * (1LL << i);
auto delay = std::min(base, std::chrono::milliseconds(2000));
std::uniform_int_distribution<int> jitter(0, int(delay.count() / 2));
std::this_thread::sleep_for(delay + std::chrono::milliseconds(jitter(rng)));
}
return false;
}