Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中,垃圾收集如何处理会话对象?_Java_Jsp_Garbage Collection - Fatal编程技术网

在Java中,垃圾收集如何处理会话对象?

在Java中,垃圾收集如何处理会话对象?,java,jsp,garbage-collection,Java,Jsp,Garbage Collection,垃圾收集如何处理JSP中的会话对象?会话过期后是否对每个会话进行垃圾收集?用JSP中的会话对象处理内存的更好方法是什么?垃圾收集器将只收集代码中不再有任何硬引用的对象。HttpSession对象由servletcontainer的内部代码引用。当会话到期时,servletcontainer的内部代码将取消对它的引用,GC将在会话到期时对其进行扫描 你根本不用担心这个。一切都已经为你准备好了 如果您的实际问题是内存使用过多和/或内存不足,那么问题的原因肯定在其他地方,必须以不同的方式解决。基本上

垃圾收集如何处理JSP中的会话对象?会话过期后是否对每个会话进行垃圾收集?用JSP中的会话对象处理内存的更好方法是什么?

垃圾收集器将只收集代码中不再有任何硬引用的对象。
HttpSession
对象由servletcontainer的内部代码引用。当会话到期时,servletcontainer的内部代码将取消对它的引用,GC将在会话到期时对其进行扫描

你根本不用担心这个。一切都已经为你准备好了



如果您的实际问题是内存使用过多和/或内存不足,那么问题的原因肯定在其他地方,必须以不同的方式解决。基本上,引用的对象不应超过需要的数量。

每次访问或创建会话对象时,都会重置计时器。要设置计时器的值,请启用会话超时属性

最终,用户不连接,并且该会话的会话计时器过期,然后它将从Servlet容器的会话集中删除,并像任何其他对象一样接受垃圾收集