“已失效的连接请求报文段”的产生在这样一种情况下:client发出的第一个连接请求报文段并没有丢失,而是在某个网络结点长时间的滞留了,以致延误到连接释放以后的某个时间才到达server。本来这是一个早已失效的报文段。但server收到此失效的连接请求报文段后,就误认为是client再次发出的一个新的...
分类:
其他好文 时间:
2014-09-23 11:30:04
阅读次数:
173
重载
重载包括函数重载和运算符的重载
构造函数和析构函数
构造、析构函数可以说是C++中的重中之重,它是区别于其他语言的一个标志。当实例化一个对象的时候会通过构造函数来为这个对象分配空间,而在这个对象被使用完毕的时候会通过析构函数来释放相应的空间
算法...
分类:
编程语言 时间:
2014-09-23 00:44:33
阅读次数:
321
之前写过一篇博客,关于非堆内存如何自动释放的,由此慢慢延伸写了几篇关于垃圾回收、finalize机制、引用和引用队列、sun.misc.Cleaner相关的文章,通过这几篇文章感觉自己收获很大了,对java垃圾回收相关的知识了解更深刻了。这篇博客主要做个汇总和简介,按照自己思路的延伸,把博客汇总下,方便大家阅读和查看。...
分类:
编程语言 时间:
2014-09-22 23:08:53
阅读次数:
242
最近进行zip操作,从网上找到一个处理方法,但是经过试验存在一些bug,主要是文件流的申明存在问题,导致jvm一直占用文件而不释放,特意把自己修改的发出来,已备记录import java.io.BufferedInputStream; import java.io.BufferedOutputStr...
分类:
编程语言 时间:
2014-09-22 23:01:23
阅读次数:
218
在C语言中,内存被分成5个区,它们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。
堆:是那些由new分配的内存块,它们的释放编译器不用管,由应用程序去控制,一般一个new就要对应一个delete。加入此程序员没有释放掉,那么程序结束后,操作系统会自动回收。
栈:是那些由编译器在需要的时候分配,在无须的时候自动清除的变量的存储区。里面的变量通常是局部变量、函数参数等。
自由存储区:是...
分类:
其他好文 时间:
2014-09-22 22:57:53
阅读次数:
195
C++有析构函数这个东西,能够很好地在对象销毁前做一些释放外部资源的工作,但是java没有。Object.finalize()提供了与析构函数类似的机制,但是它不安全、会导致严重的内存消耗和性能降低,应该避免使用。best practice是:像java类库的IO流/数据库连接/socket,提供显示的资源释放接口,程序员使用完这些资源后,必须要显示释放。...
分类:
其他好文 时间:
2014-09-22 18:15:43
阅读次数:
204
起因:卡乐付项目中碰到一个问题:卡乐付调用系统拍照,拍照完后,无法返回---------卡乐付应用程序在拍照的时候被杀死。原因:手机在低内存的时候,系统会按照进程的优先级进行回收进程,来释放更多内存。这个时候,卡乐付被回收。(通过 logcat ActivityManager:v *:s命令可以看到...
分类:
其他好文 时间:
2014-09-22 17:01:02
阅读次数:
168
一 稳定
1 参数检测
2 内存释放后要置空为NULL
3 if语句始终有else分支
4 switch语句始终有default分支,每个case都有break,共用分支需要给出说明
5 尽可能少的写return,最好只在函数结尾处有一个return
6 三元运算符每一部分都加上括号
7 if-else,switch-case中分支要有大括号{}
二 可读
1 注释,一般...
分类:
其他好文 时间:
2014-09-22 13:39:52
阅读次数:
204
一.OC的内存管理的过程OC为每个对象提供一个内部计数器,这个计数器跟踪对象的引用计数,当对象被创建或拷贝时,引用计数为1,每次保持对象时,调用retain接口,引用计数加1,如果不需要这个对象时调用release,引用计数减1,当对像的引用计数为0时,系统就会释放掉这块内存,释..
分类:
其他好文 时间:
2014-09-22 12:43:22
阅读次数:
173
一.OC的内存管理的过程OC为每个对象提供一个内部计数器,这个计数器跟踪对象的引用计数,当对象被创建或拷贝时,引用计数为1,每次保持对象时,调用retain接口,引用计数加1,如果不需要这个对象时调用release,引用计数减1,当对像的引用计数为0时,系统就会释放掉这块内存,释..
分类:
其他好文 时间:
2014-09-22 11:54:02
阅读次数:
225