JVM可以使用的内存分外2种:堆内存和堆外内存,堆内存完全由JVM负责分配和释放,如果程序没有缺陷代码导致内存泄露,那么就不会遇到java.lang.OutOfMemoryError这个错误。使用堆外内存,就是为了能直接分配和释放内存,提高效率。JDK5.0之后,代码中能直接操作本地内存的方式有2种:使用未公开的Unsafe和NIO包下ByteBuffer。C语言的内存分配和释放函数malloc/free,必须要一一对应,否则就会出现内存泄露或者是野指针的非法访问。java中我们需要手动释放获取的堆外内存吗...
分类:
编程语言 时间:
2014-09-16 22:08:51
阅读次数:
380
Netty是一个传输层的框架,主要的功能就是两个:封装了NIO的操作,封装了CodeC接口,从而使得NIO的开发者只需要关注与业务功能本身的ChannelHandler。
不只是Netty,传输层主要解决的问题就是这两个,处理IO,处理CodeC
CodeC主要处理的问题就是字节流的分帧(Frame),一般有以下几种
按结束符,比如http定长使用消息头消息体的方式,在消...
分类:
Web程序 时间:
2014-09-16 17:32:30
阅读次数:
219
1.常用支持非阻塞通信的类
ServerSocketChannel: ServerSocket 的替代类, 支持阻塞通信与非阻塞通信.SocketChannel: Socket 的替代类, 支持阻塞通信与非阻塞通信.Selector: 为ServerSocketChannel 监控接收连接就绪事件, 为 SocketChannel 监控连接就绪, 读就绪和写就绪事件.SelectionKe...
分类:
编程语言 时间:
2014-09-16 12:39:00
阅读次数:
315
浅谈java异常机制
下班闲来无事,看看java基础知识,做一下总结
异常机制:是java提供的一个解决突发事件或者误操作的一种控制流程的一种解决方案
Throwable 所有错误或者异常的超类,包含两个子类Error和Exection
其中Error错误是程序无法处理的,如内存溢出、机器断电等
Exception异常包括运行时异常和编译时异常
运行时异常类均继承Run...
分类:
编程语言 时间:
2014-09-16 00:20:49
阅读次数:
277
开发android,我们需要哪些技能基础
①Java基础知识 ②Linux基础知识 ③数据库基础知识 ④网络协议 ⑤Android基础知识 ⑥服务器端开发知识①Java基础知识
如何获取这些技能呢?一起来看
分类:
移动开发 时间:
2014-09-15 15:41:19
阅读次数:
295
哎,虽然自己最熟的是Java,但很多Java基础知识都不知道,比如transient关键字以前都没用到过,所以不知道它的作用是什么,今天做笔试题时发现有一题是关于这个的,于是花个时间整理下transient关键字的使用,涨下姿势~~~好了,废话不多说,下面开始:1. transient的作用及使用方...
分类:
编程语言 时间:
2014-09-15 15:37:49
阅读次数:
225
Java NIO非堵塞应用通常适用用在I/O读写等方面,我们知道,系统运行的性能瓶颈通常在I/O读写,包括对端口和文件的操作上,过去,在打开一个I/O通道后,read()将一直等待在端口一边读取字节内容,如果没有内容进来,read()也是傻傻的等,这会影响我们程序继续做其他事情,那么改进做法就是开设...
分类:
编程语言 时间:
2014-09-15 11:14:28
阅读次数:
312
1、NIO超级陷阱之所以说NIO超级陷阱,就是因为我在本系列开头的那句话,因为使用缺陷导致客户业务系统瘫痪。当然,我对这个问题进行了很深的追踪,包括对MINA源码的深入了解,但其实之所以会出现这个问题,它的根不是MINA的原因,而是JDK底层的问题...
分类:
其他好文 时间:
2014-09-15 08:48:08
阅读次数:
270
2.数据类型 基本类型: 整型: byte字节型 8位(bit) -2^7~2^7-1(-128~127) 0000 0000 short短整型 16位 -2^15~2^15-1(-32768~32767) int整型 32位 -2^31~2^31-1 (大约为21亿) long长整型 64位 -2...
分类:
编程语言 时间:
2014-09-15 00:54:27
阅读次数:
291
原文地址:http://ifeve.com/channels/声明:Java NIO系列教材并非本人原创,只因阅读原文之后有感于文章之精妙,意欲与诸位共享,故而出此下策,忘原作者见谅。另附上原文地址。Java NIO的通道类似流,但又有些不同:既可以从通道中读取数据,又可以写数据到通道。但流的读写通...
分类:
编程语言 时间:
2014-09-14 21:56:57
阅读次数:
253