Я обнаружил, что сокеты не полностью уничтожаются на стороне сервера сокетов io при ручном отключении. Я нашел эту тему на github полезной. Пока я ищу какие-то переменные-ссылки, которые мешают GC чистить сокеты, я задаю вопрос здесь.
Если бы кто-нибудь здесь столкнулся с такой же проблемой, это было бы очень полезно.
код, который не работает:
socket.on('disconnect', function(){
socket.removeAllListeners();
});
///...................
socket.disconnect();
Обходной путь, который, однако, использует ограниченные поля библиотеки:
delete io.sockets[url];
io.j = [];