Package cool.scx.io
package cool.scx.io
-
ClassDescriptionByteChannelDataSupplierBufferedInputStreamDataSupplier 和
InputStreamDataSupplier性能相反 1, 当大部分时候读取的数据长度等于 bufferLength 的时候, 性能会差一点 因为多了一次复制 2, 当大部分时候读取的数据长度小于 bufferLength 的时候, 性能会好一点 因为只会创建一个较小的数组并复制数据ByteArrayDataConsumerByteArrayDataReaderDataConsumerDataIndexerDataNodeDataReader数据生产者填充方式填充方式InputStreamDataSupplier 1, 当大部分时候读取的数据长度等于 bufferLength 的时候, 性能会高一点 因为只会进行数组创建这一步 2, 当大部分时候读取的数据长度小于 bufferLength 的时候, 性能会差一点 因为每次都会创建一个 bufferLength 大小的数组 如果启用压缩则会产生第二次复制 增加时间 如果未启用压缩则会造成内存上的一些浪费 这时建议使用BufferedInputStreamDataSupplierIOHelperKMPDataIndexer懒加载输入流LinkedDataReader寻找匹配内容 查找失败的异常读取数据时达到末尾的异常可以一次性将多个 DataSupplier 组合成一个