def run(self):
        while True:
            try:
                data, address = self.userv.skt.recvfrom(8192)
                if not data:
                    break
            except Exception, why:
                if isinstance(why, socket.error) and why[0] in (ECONNRESET, ENOTCONN, ESHUTDOWN):
                    break
                if isinstance(why, socket.error) and why[0] in (EINTR,):
                    continue
                else:
                    print datetime.now(), 'Udp_server: unhandled exception when receiving incoming data'
                    print '-' * 70
                    traceback.print_exc(file = sys.stdout)
                    print '-' * 70
                    sys.stdout.flush()
                    sleep(1)
                    continue
            if self.userv.family == socket.AF_INET6:
                address = ('[%s]' % address[0], address[1])
            reactor.callFromThread(self.userv.handle_read, data, address)
        self.userv = None
dataset/ETHPy150Open hgascon/pulsar/pulsar/core/sippy/Udp_server.py/AsyncReceiver.run/original