java 栈&队列原理

   栈什么时候弹栈取决于自我的回收和赋值,栈内部往往是根据线程池的调用有关 ,只有在线程缓存不够的情况下才会弹栈,否则将会等整个程序执行完毕之后才会弹栈。

  一般情况下,一般都不会随便弹栈,因为操作的永远都是堆内存中的对象 和引用,只有当程序执行完毕之后,栈内才会自己由内到外弹出直到下一个程序开始,对于线程池的调用是由cpu来决定的,大部分情况下,某个程序在疯狂的吃线程成调度给它的线程,(就好比游戏中来了一个电话,当你转换打开这个电话的时候,这个游戏有可能就会挂掉,那么只能重新打开这个游戏才能重新玩)这就是线程池缓存区被榨干了,然后存储决策还会在硬盘上面生成缓冲区间,,这也就是为啥会有碎片的原因。

   堆内存就是你的RAM 所要占用的内存,这里面内容很多,机器卡,内存太多这是前提,内存不多,应用无响应,ANR是CPU缓存满了,线程调度不过来,所以系统一般是先释放RAM 缓存,再释放 CPU 缓冲区

 

转载于:https://www.cnblogs.com/zhangwei-qianqian/p/11510861.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值