Python/System Signals: Difference between revisions

From Fundamental Ramen
Jump to navigation Jump to search
No edit summary
No edit summary
Line 2: Line 2:
import signal
import signal


def on_close(signum, frame):
def main():
     exit(1)
     close_requested = False


for signum in (signal.SIGHUP, signal.SIGINT, signal.SIGTERM):
    def on_close(signum, frame):
    signal.signal(signum, on_close)
        nonlocal close_requested
        close_requested = True
 
    for signum in (signal.SIGHUP, signal.SIGINT, signal.SIGTERM):
        signal.signal(signum, on_close)
 
    while not close_requested:
        time.sleep(1)
 
if __name__ == '__main__':
    main()
</source>
</source>

Revision as of 03:08, 28 August 2019

import signal

def main():
    close_requested = False

    def on_close(signum, frame):
        nonlocal close_requested
        close_requested = True

    for signum in (signal.SIGHUP, signal.SIGINT, signal.SIGTERM):
        signal.signal(signum, on_close)

    while not close_requested:
        time.sleep(1)

if __name__ == '__main__':
    main()