#include #include #include #include "ucore/rate_limit.h" int main() { int i; struct RateLimit r; time_t start = time(NULL); uc_ratelimit_init(&r, 3, 10, start); for(i = 0; i < 120; i++) { int k; long allowed = 0; sleep(1); time_t now = time(NULL); for (k = 0; k < 5000; k++) allowed += uc_ratelimit_allow(&r, now); printf("%3ld of 500 can pass i=%3d, time = %3ld\n", allowed,i , (long)(now - start)); } return 0; }