Handling Infinite Loops on Server Applications

Paul Kozik zykhou at gmail.com
Wed May 2 20:38:52 EDT 2007


I'm working with a small server program I'm writing for a small video
game. The main class constructor starts a thread that handles socket
connections, which itself starts new threads for each user connection.

The actual server program itself however needs to wait in the
background, but continue looping as not to close the running threads.
The problem is, simply running a [while True: pass] main loop in this
style eats precious CPU cycles (and for nothing). If it waits for
input, such as a socket.accept() or raw_input(), this problem does not
occur (obviously because it's not constantly looping).

What would be the best way to handle this, perhaps in a fashion
similar to how most server programs are handled (with arguments such
as [apache start], [apache stop])? Any guides towards this type of
application development?



More information about the Python-list mailing list