【问题标题】:TCP Sockets in a Python game serverPython 游戏服务器中的 TCP 套接字
【发布时间】:2012-01-07 03:06:27
【问题描述】:

我打算制作一个 Python 游戏服务器,但我不知道如何设置它。

我遇到的问题是我需要服务器来监听连接(使用socket.socket.accept()?),但它会挂起代码直到建立连接,这意味着服务器在等待时不能做任何其他事情。

多线程是解决这个问题的方法吗?

另一个问题是每个客户端是否应该在游戏开始时连接并在持续时间内保持连接,或者是否应该每秒建立连接以发送/接收数据。

【问题讨论】:

  • 您还希望它做什么,而不是由客户端请求发起?
  • 如果您需要异步网络 I/O,请查看 Twisted 框架。

标签: python sockets tcp


【解决方案1】:

正确,socket.accept() 设计阻止。要在后台处理连接,请参阅 SocketServer.ThreadingMixIn 示例。

http://docs.python.org/library/socketserver.html#asynchronous-mixins

【讨论】:

    猜你喜欢
    • 2014-04-12
    • 1970-01-01
    • 2012-02-21
    • 1970-01-01
    • 2014-01-13
    • 1970-01-01
    • 1970-01-01
    • 2019-01-05
    • 2017-01-27
    相关资源
    最近更新 更多