public final class IovArray extends java.lang.Object implements ChannelOutboundBuffer.MessageProcessor
man writev
。
struct iovec {
void *iov_base;
size_t iov_len;
};
另见Efficient JNI programming IV: Wrapping native data objects 。
Constructor and Description |
---|
IovArray() |
Modifier and Type | Method and Description |
---|---|
boolean |
add(ByteBuf buf)
|
void |
clear() |
int |
count()
返回iov条目的数字。
|
long |
maxBytes()
获取可通过 add(ByteBuf) 添加到此IovArray 的最大字节数 。
|
void |
maxBytes(long maxBytes)
通过 add(ByteBuf) 设置可以添加到此IovArray 的最大字节数 。
|
long |
memoryAddress(int offset)
返回
memoryAddress 为给定
offset 。
|
boolean |
processMessage(java.lang.Object msg)
将调用每个刷新的消息,直到它没有更多刷新消息或此方法返回
false 。
|
void |
release()
释放 IovArray 。
|
long |
size()
以字节为单位返回大小
|
public void clear()
public boolean add(ByteBuf buf)
buf
- ByteBuf
添加。
true
如果整个ByteBuf
已被添加到此IovArray
。
请注意,如果ByteBuf
是CompositeByteBuf
false
即使已添加某些组件,也可能会返回。
public int count()
public long size()
public void maxBytes(long maxBytes)
add(ByteBuf)
添加到此IovArray
的最大字节数 。
这不会影响IovArray
的现有状态,仅适用于后续调用add(ByteBuf)
。
为了确保取得一些进展,即使尺寸超过此值,至少也会接受一个ByteBuf
。
maxBytes
- 可通过add(ByteBuf)
添加到此IovArray
的最大字节数 。
public long maxBytes()
add(ByteBuf)
添加到此IovArray
的最大字节数 。
add(ByteBuf)
添加到此IovArray
的最大字节数 。
public long memoryAddress(int offset)
memoryAddress
为给定
offset
。
public void release()
IovArray
。
一旦释放进一步使用它可能会导致JVM崩溃!
public boolean processMessage(java.lang.Object msg) throws java.lang.Exception
ChannelOutboundBuffer.MessageProcessor
false
。
processMessage
在界面
ChannelOutboundBuffer.MessageProcessor
java.lang.Exception
Copyright © 2008–2018 The Netty Project. All rights reserved.