| Interface | Description |
|---|---|
| BufferedSink |
一种接收器,它在内部保存缓冲区,
以便调用者可以进行小的写操作没有性能损失
|
| BufferedSource |
内部保存一个缓冲区,以便调用者可以在没有性能的情况下进行少量读取
它还允许客户端提前读取,在消费之前进行必要的缓冲输入
|
| FileSystem |
访问分层数据存储上的读写文件。大多数调用者应该使用
FileSystem.SYSTEM
实现,它使用主机的本地文件系统。备用
实现可用于注入错误(用于测试)或转换存储的数据(用于添加)
例如加密)。 |
| LineHandler |
行处理器
|
| Sink |
接收一个字节流。使用这个接口可以在任何地方编写数据
需要:到网络、存储器或内存中的缓冲区。水槽可以分层
转换接收到的数据,如压缩、加密、节流或添加
协议框架。
|
| Source |
提供一个字节流。使用此接口从任何地方读取数据
它的位置:来自网络、存储或内存中的缓冲区。来源可能
分层以转换提供的数据,例如解压、解密或
移除协议框架。
|
| StreamProgress |
Stream进度条
|
| Class | Description |
|---|---|
| AsyncTimeout |
此超时使用后台线程在超时发生时精确地执行操作。用它来
在本地不支持超时的地方实现超时,例如对阻塞的套接字操作.
|
| BOMInputStream |
读取带BOM头的流内容,
getCharset()方法调用后会得到BOM头的编码,且会去除BOM头
00 00 FE FF = UTF-32, big-endian
FF FE 00 00 = UTF-32, little-endian
EF BB BF = UTF-8
FE FF = UTF-16, big-endian
FF FE = UTF-16, little-endian
使用:
String enc = "UTF-8"; // or NULL to use systemdefault |
| Buffer |
内存中字节的集合.
|
| Buffer.UnsafeCursor |
A handle to the underlying data in a buffer.
|
| ByteString |
不可变的字节序列.
|
| DeflaterSink |
Sync flush
|
| FastByteArrayOutputStream |
基于快速缓冲FastByteBuffer的OutputStream,随着数据的增长自动扩充缓冲区
|
| FastByteBuffer |
代码移植自blade
快速缓冲,将数据存放在缓冲集中,取代以往的单一数组 |
| ForwardingSink |
将调用转发给另一个调用的
Sink |
| ForwardingSource |
将调用转发给另一个调用的
Source |
| ForwardingTimeout |
将调用转发给另一个调用的
Timeout. |
| GzipSink |
这相当于使用
Deflater同步刷新选项。
该类不提供任何部分刷新机制。为获得最佳性能,
只在应用程序行为需要时调用GzipSink.flush()。 |
| GzipSource |
解压读取数据
|
| HashingSink |
一个接收器,计算它接受的全部字节流的哈希值。若要使用,请创建
使用您首选的哈希算法实例。将所有数据写入接收器,然后调用
HashingSink.hash()来计算最终的哈希值。 |
| HashingSource |
计算其提供的全部字节流的散列的源。若要使用,请创建
使用您首选的哈希算法实例。通过读取源文件的所有字节来耗尽源文件
然后调用
HashingSource.hash()来计算最终的哈希值 |
| InflaterSource |
解压从另一个源读取的数据.
|
| NullOutputStream |
此OutputStream写出数据到/dev/null,既忽略所有数据
来自 Apache Commons io |
| Options | |
| Pipe |
附加的源和接收器。接收器的输出是源的输入。通常每个
由它自己的线程访问:一个生产者线程将数据写入接收器和一个消费者线程
从源读取数据。
这个类使用一个缓冲区来解耦源和接收器。此缓冲区具有用户指定的最大值
大小。当生产者线程超出其消费者时,缓冲区将被填满并最终写入
水槽会堵塞,直到消费者赶上为止。对称地说,如果消费者跑得比它快
生产者读取块,直到有数据要读取。限制等待的时间
当接收器关闭时,源读取将继续正常完成,直到缓冲区
此时read将返回-1,表示流的结束。但是,如果
首先关闭源,对接收器的写入将立即失败,并带有
IOException。 |
| RealBufferedSink | |
| RealBufferedSource | |
| Segment |
缓冲区的一段
缓冲区中的每个段都是一个循环链表节点,它引用以下内容和
缓冲区中前面的段。
池中的每个段都是一个单链列表节点,引用池。
段的底层字节数组可以在缓冲区和字节字符串之间共享。当一个
段不能回收,也不能改变它的字节数据。
唯一的例外是允许所有者段附加到段中,写入数据
limit及以上。每个字节数组都有一个单独的拥有段。的立场,
限制、prev和next引用不共享。 |
| SegmentPool |
这是避免GC搅动和零填充所必需的。
这个池是一个线程安全的静态单例。
|
| Timeout |
在放弃一项任务之前要花多少时间的策略。当一个任务
超时时,它处于未指定的状态,应该被放弃。
例如,如果从源读取超时,则应关闭该源并
稍后应重试读取。如果向接收器写入超时,也是一样
适用规则:关闭洗涤槽,稍后重试。
|
Copyright © 2019. All rights reserved.