cookie你理解错了吧。
cookie是服务端创建,但是写在了客户端。
每次http请求,cookie会被发送到服务端。至于是否使用,要看服务端是否读取。
还有,什么时候被回收,要看你服务端怎么来创建对象了。
如果只是普通的一个创建,那么就和虚拟机的回收机制有关了,对用户来说不可操控。
对于程序计数器、虚拟机栈、本地方法栈这三个部分而言,其生命周期与相关线程有关,随线程而生,随线程而灭。并且这三个区域的内存分配与回收具有确定性,因为当方法结束或者线程结束时,内存就自然跟着线程回收了。因此关内存分配和回收关注的是Java堆与方法区这两个区域。
如何判断对象已“死”
Java堆中存放着几乎所有的对象实例,垃圾回收器在堆进行垃圾回收前,首先要判断这些对象那些还存活,那些已经“死去”。判断对象是否已“死”有如下几种算法:
引用计数法
可达性分析算法
对于垃圾的回收主要是以下几种算法:
标记-清除算法
复制算法
标记整理算法
分代收集算法