socket.io 每个人侦听不同的事件靠谱吗?
发布于 2年前 作者 cxh80301983 827 次浏览

s.on("message",function(data){ var time = data.time; s.emit(“tock"+time,"msg”); })

这样写靠谱吗? 可以用动态 事件吗?

8 回复

不靠谱,会内存泄露,node.js会提示监听的事件过多

类似现在双屏互动的游戏,如何建立 一一对应的关系, 事件是一样的,但频道id 是部一样的 , 也就是 一个手机对应一个 pc 这样互动, 这个 在 socket.io 怎么操作呢?

虽然没听的很明白,不过 如果频道ID不一样,就多创建一个ID 是两者一样就好了

完全靠谱。 这只是带内事件(消息名),每个Socket.io的Socket都有EventEmitter接口。 就好比每家有自己的邮箱,往不同邮箱写信,你可以用任意的信封(消息名),但要收信人愿意处理这种消息。 即便你使用相同的消息名,占用的系统资源也是一样多的。 你可以看看 https://github.com/joyent/node/blob/master/lib/events.js

我的意思是 如何让 两个设备 可以匹配,一台设备只能操作另一台 ,而不是 操作所有设备

首先感谢 ~照这么说的话 用户退出的时候 需要人为的 去删除该事件的侦听吗?

@cxh80301983 应该不必去监听。这些都是在socket内的数据,释放socket即释放。但socket释放时间是比较长的,可自己控制。http://cnodejs.org/topic/51dfc648f4963ade0e48ac35

回到顶部