编程语言更迭至今,几乎没有人没有用过一门不用垃圾回收的语言,一方面因为C之类的语言内存管理较为困难,更重要的是因为语言越高级,越注重实际的业务逻辑,而关于内存管理的代码频繁夹杂在业务中,并不那么自然。###
没有垃圾回收的编程体验 #include #include struct node { .....
分类:
其他好文 时间:
2014-05-05 21:49:59
阅读次数:
329
GC.Collect()GC.WaitForPendingFinallizers()GC.KeepAlive尽量不要new很大的Object不要频繁的new生命周期很短的Object,这样会导致很多内存碎片引起频繁的压缩
分类:
其他好文 时间:
2014-05-05 21:47:03
阅读次数:
448
内存模型:
为了屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的并发结果。
分类:
编程语言 时间:
2014-05-05 21:32:28
阅读次数:
316
1.sgi STL"标准"的空间适配器: 该适配器很简单,只是对new
delete等内存分配释放函数的一层简单封装而已,所以sgi stl几乎没用上它(效率太低),代码位于defalloc.h.2.sgi stl特殊适配器
std::alloc: 该版本作为stl中的默认适配器,主要分成两个部分:...
分类:
其他好文 时间:
2014-05-04 12:41:42
阅读次数:
381
简单介绍一下Linux的由来以及Linux和UNIX的关系Linux简介:
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linu....
分类:
系统相关 时间:
2014-05-04 12:41:13
阅读次数:
610
Erlang核心开发者Lukas Larsson在2014年3月份Erlang
Factory上一个演讲的听写稿,详细介绍了Erlang内存体系的原理以及调优案例。
分类:
其他好文 时间:
2014-05-03 23:40:47
阅读次数:
383
1.registerregister变量必须是能被CPU寄存器所接受的类型(32位机器寄存器为32位),必须是单个的值,长度小于或等于整形的长度不能用&来获取register变量的地址。2staticstatic在代码块外或函数声明用于更改标识符的链接属性static在代码块内的变量定义用于更改存储...
分类:
其他好文 时间:
2014-05-03 23:34:28
阅读次数:
318
iOS设备的内存有限,如果用UITableView显示成千上万条数据,就需要成千上万个UITableViewCell对象的话,那将会耗尽iOS设备的内存。要解决该问题,需要重用UITableViewCell对象重用原理:当滚动列表时,部分UITableViewCell会移出窗口,UITableVie...
分类:
其他好文 时间:
2014-05-03 23:26:14
阅读次数:
312
参考文献:
http://blog.csdn.net/snlying/article/details/4005238返回情况
:返回的是一个void类型的指针,调用成功。(这就再你需要的时候进行强制类型转换)返回NULL,当需要扩展的大小(第二个参数)为0并且第一个参数不为NULL,此时原内存变成了...
分类:
其他好文 时间:
2014-05-03 22:46:37
阅读次数:
518
缘起
线上有Tomcat升级到7.0.52版,然后有应用的JVM FullGC变频繁,在高峰期socket连接数,Cpu使用率都暴增。
思路
思路是Tomcat本身的代码应该是没有问题的,有问题的可能是应用代码升级,或者环境改变了,总之Tomcat的优先级排在最后。
先把应用的heap dump下来分析下:
jmap -dump:format=b,file=path pid
用IB...
分类:
其他好文 时间:
2014-05-03 21:42:36
阅读次数:
382