今天来看一下 mark 过程是怎样实现的。所有的 GC 流程,都从 singlestep 函数开始。singlestep 就是一个最简单的状态机。GC 状态简单的从一个状态切换到下一个状态,循环不止。状态标识放在 global state 的 gcstate 域中。这一点前面谈过。开始的两个状态和 ...
分类:
其他好文 时间:
2014-07-27 09:57:32
阅读次数:
302
普及下常识:GC 是 garbage collector 资源回收器;初期的 Lua GC 采取的是 stop the world 的实现。一旦产生 gc 就需要期待全部 gc 流程走完。lua 自己是个很精简的体系,但不代表处理的数据量也必然很小。从 Lua 5.1 入手下手,GC 的实现改成分步...
分类:
其他好文 时间:
2014-07-27 09:54:52
阅读次数:
262
我们知道在程序运行过程中要创建大量的对象,和其他高级语言类似,在ObjC中对象时存储在堆中的,系统并不会自动释放堆中的内存(注意基本类型是由系统自己管理的,放在栈上)。如果一个对象创建并使用后没有得到及时释放那么就会占用大量内存。其他高级语言如C#、Java都是通过垃圾回收来(GC)解决这个问题的,...
分类:
移动开发 时间:
2014-07-27 09:43:12
阅读次数:
515
UVA 10428 - The Roots
题目链接
题意:给定一个一元多次方程组,要求求出所有根
思路:利用牛顿迭代法 xn+1=xn?f(xn)/f′(xn),不断迭代就能求出较为精确的值,然后由于有的方程可能有多解,每次解得一个X后,就把原式子除以(x
- X),这个是肯定能整除的,把方程降阶然后继续用牛顿迭代法直到求出所有解
代码:
#include
#...
分类:
其他好文 时间:
2014-07-26 02:48:56
阅读次数:
181
为什么需要优化GC 或者说的更确切一些,对于基于Java的服务,是否有必要优化GC?应该说,对于所有的基于Java的服务,并不总是需要进行GC优化,但前提是所运行的基于Java的系统,包含了如下参数或行为:已经通过-Xms和–Xmx 设置了内存大小包含了-server参数系统中没有超时日志等错误日....
分类:
编程语言 时间:
2014-07-25 02:17:34
阅读次数:
468
客户反映系统越用越慢,重启服务器后段时间内系统恢复正常 老年代 垃圾回收不了。 full gc 每分钟执行40次左右。 开始以为是内存泄漏,导出jvm内存快照 快照中可以看到线程池里有问题。但是看不出具体的问题原因 ...
分类:
其他好文 时间:
2014-07-25 00:04:44
阅读次数:
379
这是本人的第二篇文章。通过上一篇文章的总结后,我觉得有必要对java内存回收问题再详细叙述一下。因为大多数javaer估计都是习惯了自己的java编码风格,尤其是对象声明等,想在哪声明就在哪声明,之后就不管了,因为他知道java有一个很好的内存管理机制,那就是GC(垃圾回收机制)。其实这对一般的ja...
分类:
编程语言 时间:
2014-07-24 22:04:42
阅读次数:
292
http://acm.njupt.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=1028Digital Roots时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte总提交:493 ...
分类:
其他好文 时间:
2014-07-23 22:30:07
阅读次数:
262
1、Java的内存泄露介绍
首先明确一下内存泄露的概念:内存泄露是指程序运行过程动态分配了内存,但是在程序结束的时候这块内存没有被释放,从而导致这块内存不可用,这就是内存
泄露,重启计算机可以解决这个问题,但是有可能再次发生内存泄露,内存泄露与硬件没有关系,它是软件设计的缺陷所导致的。
Java发生内存泄露的原因很明确,就是长声明周期对象持有短声明周期对象的引用就很可能发生内存泄露。尽管短生...
分类:
编程语言 时间:
2014-07-23 13:35:27
阅读次数:
352
一个机智题,可惜比赛的时候没有机智出来#include#include#include#include#define ll long long#define mod 1000000009#define maxn 100009using namespace std;ll c[maxn];void gc...
分类:
其他好文 时间:
2014-07-22 23:37:17
阅读次数:
366