Estoy escribiendo una aplicación de procesamiento de colas que utiliza subprocesos para esperar y responder a los mensajes de cola que se entregarán a la aplicación. Para la parte principal de la aplicación, solo necesita mantenerse activo. Por ejemplo, un código como:Python: ¿pasar o suspender para procesos de larga ejecución?
while True: pass
o
while True: time.sleep(1)
Cuál va a tener el menor impacto en un sistema? ¿Cuál es la forma preferida de no hacer nada, pero mantener una aplicación de Python ejecutándose?
La respuesta correcta no es hacer el sondeo de E/S en absoluto. Ver por ejemplo la llamada select(), donde el sistema operativo duerme hasta que haya algo listo para leer. –
Bueno, en el caso de los subprocesos, están usando conexiones TCP de bloqueo en espera de mensajes. Es solo el hilo principal que me preocupa, y no hace otra cosa que manejar las opciones de línea de comando, configuración de lectura y puntapié de hilos. –