1
私はソケットリスナスレッドを実行しており、特定の条件が満たされたときに閉じるべきです。私のコードスニペットがあります。pythonでudpソケットをシャットダウンする方法
def __init__(self, arg):
threading.Thread.__init__(self)
self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
receiver_port = int(<port>)
listen_addr = (<some ip>, receiver_port)
self.socket.bind(listen_addr)
self.shutdown = threading.Event()
self.shutdown.set()
def kill_function():
self.socket.shutdown(socket.SOCK_DGRAM)
self.shutdown.clear()
self.socket.close()
私はユーザーSHUT_RD、SHUT_RDWR場合にも同じ問題が観察され
OSError: [Errno 107] Transport endpoint is not connected error when I try to
kill the socket.
に直面しています。 誰でもUDPソケットを使用している間shutdown()関数を呼び出す方法を教えてください。
ありがとうございます。
同じレベルでメソッド( '__init__')と関数(' kill_function'、 'self')はありませんか? @KlausD。 –
はい、殺す機能は自己を持って、それは誤植です –