after open(popup) many Spark ChatRoom windows will increase lots of memory,after closing chat windows it doesn't release this memory.
how can get ChatRoom(or maybe another resource) references released? in which class？
well, it would seem that something may be using those objects... since they won't be GC'ed if there is still some object holding a reference to them. I would try using a profiler on it when you experience the problems. If you have the Oracle JDK installed on your computer, then you have jvisualvm already. Launch it at the cmd line using: jvisualvm and then point it at the right running JVM (spark).
This will help identify where the memory might be getting held up, etc.
Also it may help to know more about your environment. What OS, which JVM (embedded Spark JVM or system JVM?) which Spark version, how many is "many" chat rooms, how much is "lots of memory", etc...
Spark version is 2.6.3."many" chat rooms are 20 or 30
some like this:
I want to know whether this phenomenon can reappear?
Retrieving data ...