社区讨论
性感代码在线求调
灌水区参与者 19已保存回复 42
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 42 条
- 当前快照
- 1 份
- 快照标识符
- @lo3f4vvg
- 此快照首次捕获于
- 2023/10/24 05:37 2 年前
- 此快照最后确认于
- 2023/10/24 05:37 2 年前
RT. 表现为:内存不停增长,疑似内存泄漏。
JAVASCRIPTconst wss = await new Promise((resolve, reject) => {
const server = Https.createServer({
cert: cert,
key: key,
path: '/ws'
});
const wsServer = new WebSocket.WebSocketServer({ server });
wsServer.on('connection', (ws, req) => {
console.log("Get Websocket Connection: ", req.connection.remoteAddress)
if (req.connection.remoteAddress === "::ffff:18.176.178.41") ws.close();
ws.on('message', (message) => {
try {
const msg = JSON.parse(message);
console.log(msg)
if (msg.type === 'join_channel' && msg.channel === 'paintboard') {
ws.send(JSON.stringify({ type: 'result' }));
}
else {
ws.close();
}
}
catch {
ws.close();
}
});
ws.on('close', function (message) {
ws.close();
});
ws.on('error', function (message) {
ws.close();
});
});
wsServer.on('listening', () => resolve(wsServer));
wsServer.on('error', (error) => { reject(error); });
server.listen(wsport);
});
// ......
const paintQueue = async.queue(async ({
x, y, color, log,
}) => {
board[x][y] = COLORR[color];
const broadcast = JSON.stringify({
type: 'paintboard_update',
x,
y,
color,
});
wss.clients.forEach((client) => {
if (client.readyState === WebSocket.OPEN) {
client.send(broadcast);
}
});
log.info(`WebSocket broadcast: ${broadcast}`);
});
回复
共 42 条回复,欢迎继续交流。
正在加载回复...