public final class IovArray extends java.lang.Object implements ChannelOutboundBuffer.MessageProcessor
man writev.
struct iovec {
void *iov_base;
size_t iov_len;
};
See also
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()
Returns the number if iov entries.
|
long |
maxBytes()
Get the maximum amount of bytes that can be added to this
IovArray via add(ByteBuf). |
void |
maxBytes(long maxBytes)
Set the maximum amount of bytes that can be added to this
IovArray via add(ByteBuf). |
long |
memoryAddress(int offset)
Returns the
memoryAddress for the given offset. |
boolean |
processMessage(java.lang.Object msg)
Will be called for each flushed message until it either there are no more flushed messages or this
method returns
false. |
void |
release()
Release the
IovArray. |
long |
size()
Returns the size in bytes
|
public void clear()
public boolean add(ByteBuf buf)
buf - The ByteBuf to add.true if the entire ByteBuf has been added to this IovArray. Note in the event
that ByteBuf is a CompositeByteBuf false may be returned even if some of the components
have been added.public int count()
public long size()
public void maxBytes(long maxBytes)
IovArray via add(ByteBuf).
This will not impact the existing state of the IovArray, and only applies to subsequent calls to
add(ByteBuf).
In order to ensure some progress is made at least one ByteBuf will be accepted even if it's size exceeds
this value.
maxBytes - the maximum amount of bytes that can be added to this IovArray via add(ByteBuf).public long maxBytes()
IovArray via add(ByteBuf).IovArray via add(ByteBuf).public long memoryAddress(int offset)
memoryAddress for the given offset.public void release()
IovArray. Once release further using of it may crash the JVM!public boolean processMessage(java.lang.Object msg)
throws java.lang.Exception
ChannelOutboundBuffer.MessageProcessorfalse.processMessage in interface ChannelOutboundBuffer.MessageProcessorjava.lang.ExceptionCopyright © 2008–2019 The Netty Project. All rights reserved.