循环调用内存爆炸原因是程序架构设计不优秀
优秀的程序运行起来应该向一棵树一样的逻辑结构层次分明,而循环调用则是连在了一起,并且循环了,所以就导致


没开几个有用内存却能够彪到这么高 ,一看原来进程没杀干净,但我已经开了3次资源管理器了,

为什么循环调用就杀不干净呢,我进行了一个简单的猜想:可能是这个程序分了很多线程,前面杀的只不过是其中的几个占用比较高的,高的进程杀掉了,剩下的就是没开始生长的,这些没有生长的也会慢慢的长大逐渐把性能都占光。
循环调用在原理上可能和for的死循环差不多,所以无限制的膨胀下去,不管电脑配置有多高也可以占满导致电脑最终崩溃,而占用的内存数据里面存放的是什么呢?
那就是无限循环带来的无限重复的垃圾数据,这些数据内容是无限循环的。
程序设计对循环调用关注的并不是非常明显,优秀的架构设计不会出现问题,但一个长时间没有碰过的程序,然后多次在这些封装功能中调用使用以及使用get set 这些功能属性器的时候会容易一些出现循环调用
尤其是程序架构设计糟糕的情况下多会出现,只要一出现,应用就会崩溃
遇到这种情况在flash技术中avm虚拟机会给应用10秒循环时间,过了10秒还是循环不完则会提示关闭程序,否则性能差一些的电脑也就只能拔电源了,这真的是用户体验的大坑。
并没有什么解决方案,只能是前期对程序设计架构就做好把握,尽力在前期就把架构做的优美一些,这也是对程序员功力的考验呀~