wxPython线程化的UDP服务

2024-09-27 00:16:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用wxpythongui组装一个UDP服务器。在

以下是代码链接:

UDP Server pastie.org

我把它联系起来,因为它很长。我已经成功地让UDP服务器在线程上运行,但是我不知道如何在停止线程时关闭套接字。在

目前,它将启动一个新线程,每次你点击开始,但我将删除这个。当线程停止运行时,是否可以关闭套接字?在

如果我这样做完全错误的方式,任何建议都是值得赞赏的。在

干杯

Eef公司


Tags: 代码org服务器server链接错误方式线程
1条回答
网友
1楼 · 发布于 2024-09-27 00:16:50

使用Python Twisted。它与wxPython集成twisted.internet.wx反应器使网络变得简单无线程。在

from twisted.internet import wxreactor
from twisted.internet.protocol import DatagramProtocol

wxreactor.install()

class MyProtocol(DatagramProtocol):
    def datagramReceived(self, data, (host, port)):
        print "received %r from %s:%d" % (data, host, port)
        self.transport.write(data, (host, port))

# <GUI code>
# to start listening do port = reactor.listenUDP(<port>, MyProtocol())
# to stop do self.transport.stopListening() in MyProtocol
# or port.stopListening() from outside

from twisted.internet import reactor
reactor.registerWxApp(app)
reactor.run()

相关问题 更多 >

    热门问题