Search code examples
c++sleepclock

linux sleeping with clock_nanosleep


I want to use clock_nanosleep for waiting of 1 microsec.. As far as I understand, I have to give an absolute time as input. Is the following code okay in this case?

deadline.tv_sec = 0;
deadline.tv_nsec = 1000;

clock_nanosleep(CLOCK_REALTIME, TIMER_ABSTIME, &deadline, NULL);

Solution

  • As far as I understand, I have to give an absolute time as input.

    No, the flags argument allows you to choose relative or absolute time. You want

    clock_nanosleep(CLOCK_REALTIME, 0, &deadline, NULL);
    

    to specify one microsecond from now.