Skip to content

Instantly share code, notes, and snippets.

@tjfontaine
Last active August 29, 2015 14:04
Show Gist options
  • Save tjfontaine/9b6e1ab026ba57e0eb8f to your computer and use it in GitHub Desktop.
Save tjfontaine/9b6e1ab026ba57e0eb8f to your computer and use it in GitHub Desktop.
#include <stdio.h>
#include <unistd.h>
#include <uv.h>
static uv_timer_t timer;
long long start = 0;
static void cb(uv_timer_t* timer) {
uv_update_time(uv_default_loop());
long long s = uv_hrtime();
uv_timer_start(timer, cb, 100, 0);
usleep(20000);
long long e = uv_hrtime();
printf("entry %lld -- exit %lld -- entry delta %f\n", s, e, (s - start) / 1e6);
start = e;
}
int main(void) {
uv_timer_init(uv_default_loop(), &timer);
uv_timer_start(&timer, cb, 0, 0);
start = uv_hrtime();
return uv_run(uv_default_loop(), UV_RUN_DEFAULT);
}
enter 1406841066695 exit 1406841066715 entry delta 466
enter 1406841067225 exit 1406841067245 entry delta 510
enter 1406841067745 exit 1406841067765 entry delta 500
enter 1406841068266 exit 1406841068286 entry delta 501
enter 1406841068786 exit 1406841068806 entry delta 500
enter 1406841069307 exit 1406841069327 entry delta 501
enter 1406841069827 exit 1406841069847 entry delta 500
enter 1406841070347 exit 1406841070367 entry delta 500
enter 1406841070868 exit 1406841070888 entry delta 501
enter 1406841071389 exit 1406841071409 entry delta 501
enter 1406841071910 exit 1406841071930 entry delta 501
enter 1406841072431 exit 1406841072451 entry delta 501
var s = Date.now();
setInterval(function() {
var st = Date.now();
while(Date.now() - st < 20);
var e = Date.now();
console.log('enter', st, 'exit', e, 'entry delta', st - s);
s = e;
}, 500)
enter 1406841066695 exit 1406841066715 entry delta 466
enter 1406841067225 exit 1406841067245 entry delta 510
enter 1406841067745 exit 1406841067765 entry delta 500
enter 1406841068266 exit 1406841068286 entry delta 501
enter 1406841068786 exit 1406841068806 entry delta 500
enter 1406841069307 exit 1406841069327 entry delta 501
enter 1406841069827 exit 1406841069847 entry delta 500
enter 1406841070347 exit 1406841070367 entry delta 500
enter 1406841070868 exit 1406841070888 entry delta 501
enter 1406841071389 exit 1406841071409 entry delta 501
enter 1406841071910 exit 1406841071930 entry delta 501
enter 1406841072431 exit 1406841072451 entry delta 501
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment