#define _GNU_SOURCE #include #include #include #define N 1000000 int main(void) { struct timeval tv1, tv2; int i; task_t task; task = mach_task_self(); mach_port_urefs_t refs; gettimeofday(&tv1, NULL); for (i = 0; i < N; i++) { mach_port_get_refs(task, task, MACH_PORT_RIGHT_RECEIVE, &refs); } gettimeofday(&tv2, NULL); printf("%fµs\n", (float)((tv2.tv_sec-tv1.tv_sec) * 1000000 + tv2.tv_usec - tv1.tv_usec)/N); return 0; }