Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct timespec end_time;
- struct timespec current_time;
- double shocktimesec_s = floor(shocktimesec);
- double shocktimesec_ns = (shocktimesec - floor(shocktimesec)) * 1e9;
- clock_gettime(CLOCK_MONOTONIC, &end_time);
- if ((end_time.tv_nsec + shocktimesec_ns ) < 1.00) {
- end_time.tv_sec = end_time.tv_sec + shocktimesec_s;
- end_time.tv_nsec = end_time.tv_nsec + shocktimesec_ns;
- } else {
- end_time.tv_sec = end_time.tv_sec + shocktimesec_s + 1;
- end_time.tv_nsec = (end_time.tv_nsec + shocktimesec_ns) - 1;
- }
- long double end_time_value = end_time.tv_sec + (end_time.tv_nsec / 1e9);
- long double current_time_value = 0;
- do {
- // do stuff here!
- clock_gettime(CLOCK_MONOTONIC, ¤t_time);
- current_time_value = current_time.tv_sec + (current_time.tv_nsec / 1e9);
- printf("current time: %f", current_time_value);
- printf("end time: %f", end_time_value);
- } while (current_time_value < end_time_value);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement