public interface FileRegion extends ReferenceCounted
Channel
which supports
zero-copy file transfer.
FileChannel.transferTo(long, long, WritableByteChannel)
has at least
four known bugs in the old versions of Sun JDK and perhaps its derived ones.
Please upgrade your JDK to 1.6.0_18 or later version if you are going to use
zero-copy file transfer.
FileRegion
might fail or yield worse
performance. For example, sending a large file doesn't work well in Windows.
限定符和类型 | 方法和说明 |
---|---|
long |
count()
Returns the number of bytes to transfer.
|
long |
position()
Returns the offset in the file where the transfer began.
|
FileRegion |
retain()
Increases the reference count by
1 . |
FileRegion |
retain(int increment)
Increases the reference count by the specified
increment . |
FileRegion |
touch()
Records the current access location of this object for debugging purposes.
|
FileRegion |
touch(java.lang.Object hint)
Records the current access location of this object with an additional arbitrary information for debugging
purposes.
|
long |
transfered()
已过时。
Use
transferred() instead. |
long |
transferred()
Returns the bytes which was transferred already.
|
long |
transferTo(java.nio.channels.WritableByteChannel target,
long position)
Transfers the content of this file region to the specified channel.
|
refCnt, release, release
long position()
@Deprecated long transfered()
transferred()
instead.long transferred()
long count()
long transferTo(java.nio.channels.WritableByteChannel target, long position) throws java.io.IOException
target
- the destination of the transferposition
- the relative offset of the file where the transfer
begins from. For example, 0 will make the
transfer start from position()
th byte and
count()
- 1 will make the last
byte of the region transferred.java.io.IOException
FileRegion retain()
ReferenceCounted
1
.retain
在接口中 ReferenceCounted
FileRegion retain(int increment)
ReferenceCounted
increment
.retain
在接口中 ReferenceCounted
FileRegion touch()
ReferenceCounted
ResourceLeakDetector
. This method is a shortcut to touch(null)
.touch
在接口中 ReferenceCounted
FileRegion touch(java.lang.Object hint)
ReferenceCounted
ResourceLeakDetector
.touch
在接口中 ReferenceCounted