如何从sockets.io触发的线程启动单独的线程

How to start a separate thread from a sockets.io triggered thread

本文关键字:线程 启动 单独 sockets io      更新时间:2023-09-26

好的,所以我正在开发一款多人游戏,使用:Node.js、Sockets.io&Redis

无论如何,玩家可以创建一个游戏,然后开始游戏,现在游戏逻辑大约每10秒更新一次,所以这是通过调用一个方法来完成的,该方法将通过setTimeout每x秒调用一次自己。

我担心的是,当连接的客户端连接、创建游戏(启动setTimeout周期)然后断开连接时,这将停止任何setTimeout,从而扼杀所有其他玩家的游戏。即使setTimeout在用户断开连接时一直被触发,我仍然希望在理想情况下将其单独运行到用户socket.io连接。

有没有一种简单的方法可以在node.js中启动一个单独的进程/线程?(从连接的插座.io连接)

可能取决于您的目的。例如:

http://nodejs.org/api/child_process.html

如果不是这样,您可能需要查看节点光纤