FastJson 拷贝过程踩坑
前几天在项目中使用 fastjson,对对象进行修改,发现我修改了新创建的对象,但是原始的 fastjson 的内容也发生了改变。当时是在一个方法中,有个 JSONObject 对象传递进来,然后在 for 循环中重新创建一个对象,塞进数组中,下面模拟一个简单事例:
当你的才华还撑不起你的野心时,那你就应该静下心来学习
前几天在项目中使用 fastjson,对对象进行修改,发现我修改了新创建的对象,但是原始的 fastjson 的内容也发生了改变。当时是在一个方法中,有个 JSONObject 对象传递进来,然后在 for 循环中重新创建一个对象,塞进数组中,下面模拟一个简单事例:
最近在测试环境登录的时候,突然出现了下面的异常。
声明:如果本文有错误,希望指出。
之前接手一个别人刚写好的项目,丢到服务器上跑了没几天,服务器上别的服务都不能使用了。查看阿里云控制台,发现内存爆满了,只能先把这个服务先下,保证别的服务正常使用,还好是在测试阶段,还没正式上线。
对于内存泄露,一开始以为是Java I/O操作没有关闭,导致Java JVM内存泄露。但是发现项目中的I/O操作都已经把做了close操作。最后使用 jconsole 来监控本地内存的变化,发现是不断的创建线程,导致内存的不足,本地长时间跑项目出现下面的错误,这个和通过jconsole监控内存得出的结果差不多。