I'm looking for a way to interrupt a long-running function on a key press, but without halting the function.
E.g. if I have these two functions: def handler(*args): print "caught interrupt and continuing..." def exercise_cpu(): for i in range(8): print "working..." for j in range(1000000): pass print "done" and I call exercise_cpu(), then type some key combination (say, Ctrl-x-p for the sake of the argument), I'd like the result to look something like this: >>> exercise_cpu() working... working... working... working... working... working... caught interrupt and continuing... working... working... done I think I want to use the readline module to catch the key press Ctrl-x-p and generate a signal, say SIGUSR1, then use the signal module to install a signal handler to catch SIGUSR1. Is this the right approach, or is there a better one? Does anyone show me an example of working code that does this? Linux only solutions are acceptable. -- Steven -- http://mail.python.org/mailman/listinfo/python-list