Python 如何允许通过套接字同时发送消息?
我正在做一个游戏(冒险)。我已经完成了设置,所以不需要我完全重新设计网络的解决方案更可取。问题是我已经进入了主游戏,我需要允许多个用户同时发送消息。一般的想法是,当一个玩家轮到他们时,另一个玩家可以发送一条没收信息,并且仍然可以退出游戏而不会使整个服务器崩溃。有没有办法做到这一点,可以使用线程吗?没有理由在一个连接上阻塞主线程。Python 如何允许通过套接字同时发送消息?,python,networking,Python,Networking,我正在做一个游戏(冒险)。我已经完成了设置,所以不需要我完全重新设计网络的解决方案更可取。问题是我已经进入了主游戏,我需要允许多个用户同时发送消息。一般的想法是,当一个玩家轮到他们时,另一个玩家可以发送一条没收信息,并且仍然可以退出游戏而不会使整个服务器崩溃。有没有办法做到这一点,可以使用线程吗?没有理由在一个连接上阻塞主线程。 当建立连接时,您需要一个侦听线程。后台线程处理与客户端的通信。 您确实需要维护防弹状态机,以便客户端知道在任何给定状态下可以发送的适当消息,服务器需要知道在任何给定状态
当建立连接时,您需要一个侦听线程。后台线程处理与客户端的通信。
您确实需要维护防弹状态机,以便客户端知道在任何给定状态下可以发送的适当消息,服务器需要知道在任何给定状态下可以处理哪些有效消息。 搜索stackoverflow,您会发现许多示例,例如:
服务器-客户端模式:任何连接到服务器的客户端都可以自由断开连接,而不会影响其他客户端。是的,这涉及到线程。还需要服务器套接字。如果您开始使用线程套接字,我建议您查看该模块。如果您使用TCP,则不存在通过套接字同时发送消息的情况。我以前在此类项目中使用过Tornado。它是一个异步http服务器,也可以处理WebSocket。您甚至可以将SockJS用作不支持websockets的浏览器的兼容层。有关Python的更多信息,请查看此处: