首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
请问下,controller何时回收?
flash866
2017-12-05 11:27
不知道什么时候controller才会回收掉呢?是一个请求结束断开连接后全部回收吗?
项目:
JFinal
评论区
JFinal
2017-12-05 11:29
何时回收取决于 JVM 的行为。 此外,你还可以使用下面的代码重复利用 controller 对象:
me.setControllerFactory(new FastControllerFactory());
回复
flash866
2017-12-06 11:11
@JFinal
可能我意思表达错了,因为我以前是做PHP开发的,一个controller在生成后,当用户断开连接后,这个controller的所有资源都会释放掉,不知道jFinal是怎么设计的呢?一个controller就是一个线程吗?那用户断开连接后,这个线程是不是就消亡了呢?
回复
JFinal
2017-12-06 11:19
@flash866
线程是 tomcat jetty 创建并管理的,jfinal 并不需要自行管理。 数据库连接资源的回收 ActiveRecordPlugin 会自行管理
用户断开连接以后线程不会消亡,而是下个请求过来以后重复利用,这也是比 php 性能高的重大原因之一,php 的 web 框架通常是请求过来临时准备环境,获取资源,请求处理完成后释放这些资源,而 java 的 web 框架则可以重复利用这些资源
回复
tonysb
2023-12-15 16:40
@flash866
请求结束,jfinal好像是在finally中将实例化对象设置为null了,至于什么时候回收,是JVM自己来控制
回复
发送
我要反馈
热门反馈
扫码入社
me.setControllerFactory(new FastControllerFactory());