为了提高I/O性能,主要基于以下原则:
(1)能少访问磁盘尽量少访问
(2)能少访问底层操作系统尽量少访问底层操作系统
(3)能少方法调用尽量少方法调用
(4)能少个别的处理字节字符尽量少个别处理。
技巧1:能用缓冲尽量使用缓冲来进行访问
比如基于字符的有BufferedReader,基于字节的有BufferedInputStream。或者用块读取方法来提高性能。
技巧2:InputStream比Reader高效,OutputStream比Writer高效
技巧3:byte比char高效
一个char用2个字节来保存字符,但是一个byte只用1个字节来保存数据。而且byte可以避免unicode的转换。
技巧4:缓冲块比缓冲流更高效
虽然缓冲流比单独字符访问高效的多,但是毕竟涉及到多次方法调用,缓冲块则比缓冲流高效的多。
技巧5:finally中关闭stream
程序中用到的各种资源要及时关闭,而finally块中是最好的关闭的地方。因为finally块总是会被执行的。
技巧6:尽早及时释放大对象资源
比如数据库连接资源等,用完及时关闭,开得过久对系统开销太大。
本文转自 charles_wang888 51CTO博客,原文链接:http://blog.51cto.com/supercharles888/1203430,如需转载请自行联系原作者