import threading
import signal
import time
import os
from multiprocessing import Process,Pipe


def _zombieReaper(signum, frame):
    print 'sigchild!!!'

def registerSignalHandler():
    signal.signal(signal.SIGCHLD, _zombieReaper)


def unregisterSignalHandler():
    signal.signal(signal.SIGCHLD, signal.SIG_DFL)

def child():
    time.sleep(5)

def sleepThread():
    proc = Process(target=child)
    proc.start()
    pip,pop = Pipe()
    pip.recv()

def main():
    registerSignalHandler()
    servThread = threading.Thread(target = sleepThread)
    servThread.setDaemon(True)
    servThread.start()
    time.sleep(30)

if __name__ == '__main__':
    main()

