// common.h — utilidades pequeñas para los ejemplos de la semana 1.
#ifndef COMMON_H
#define COMMON_H

#include <time.h>

// Espera activa: ocupa la CPU durante `segundos`.
static inline void spin(double segundos) {
    struct timespec t0, t;
    clock_gettime(CLOCK_MONOTONIC, &t0);
    do {
        clock_gettime(CLOCK_MONOTONIC, &t);
    } while ((t.tv_sec - t0.tv_sec) + (t.tv_nsec - t0.tv_nsec) / 1e9 < segundos);
}

#endif
