y para que necesitas dos bucles? Puedes usar usleep() para detener la ejecucion durante un periodo determinado de tiempo. Tambien, si tienes un modelo cliente servidor para esas cosas podrias usar select(), teniendo un socket donde el servidor manda una señal con el valor de la variable y si hace falta con un timeout (mirate el man de ambas funciones)
Saludos