es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Obtén CLOCK_REALTIME y CLOCK_MONOTONIC con una sola llamada.

Puedo usar

int clock_gettime(clockid_t clk_id, struct timespec *tp);

para obtener CLOCK_REALTIME y CLOCK_MONOTONIC, cada uno con una llamada.

¿Es posible obtener ambos con una sola llamada para que el resultado sea la mejor estimación del kernel de lo que ambos son en el momento en que lo solicito?

Antecedentes: Necesito sincronizar los dos para detectar saltos en CLOCK_REALTIME, que está sincronizado con la hora GPS, y temo (no sé si es un temor válido) que llamar a clock_gettime() dos veces agregará problemas porque puede suceder mucho entre mis dos llamadas.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Como experto en tecnología de la información especializado en posix y timestamps, puedo confirmar que no es posible obtener tanto CLOCK_REALTIME como CLOCK_MONOTONIC en una sola llamada utilizando clock_gettime(). Cada llamada a clock_gettime() debe especificar la identificación del reloj para CLOCK_REALTIME o CLOCK_MONOTONIC. Sin embargo, es posible hacer múltiples llamadas a clock_gettime() en un corto período de tiempo para reducir la diferencia de tiempo entre las dos llamadas, minimizando así la cantidad de tiempo que pasa entre las dos lecturas. Es importante tener en cuenta que llamar a clock_gettime() con frecuencia puede afectar el rendimiento del sistema, por lo que se recomienda usar este enfoque con prudencia.

Comments are closed.