public class ZeroCopyMessageMarshaller<T extends org.apache.ratis.thirdparty.com.google.protobuf.MessageLite> extends Object implements org.apache.ratis.thirdparty.io.grpc.MethodDescriptor.PrototypeMarshaller<T>
| 构造器和说明 |
|---|
ZeroCopyMessageMarshaller(T defaultInstance) |
ZeroCopyMessageMarshaller(T defaultInstance,
Consumer<T> zeroCopyCount,
Consumer<T> nonZeroCopyCount) |
| 限定符和类型 | 方法和说明 |
|---|---|
Class<T> |
getMessageClass() |
T |
getMessagePrototype() |
T |
parse(InputStream stream) |
InputStream |
popStream(T message)
Application can call this function to get the stream for the message, and,
possibly later, must call
InputStream.close() to release buffers. |
void |
release(T message)
Release the underlying buffers in the given message.
|
InputStream |
stream(T value) |
public ZeroCopyMessageMarshaller(T defaultInstance)
public Class<T> getMessageClass()
getMessageClass 在接口中 org.apache.ratis.thirdparty.io.grpc.MethodDescriptor.ReflectableMarshaller<T extends org.apache.ratis.thirdparty.com.google.protobuf.MessageLite>public T getMessagePrototype()
getMessagePrototype 在接口中 org.apache.ratis.thirdparty.io.grpc.MethodDescriptor.PrototypeMarshaller<T extends org.apache.ratis.thirdparty.com.google.protobuf.MessageLite>public InputStream stream(T value)
public T parse(InputStream stream)
public void release(T message)
public InputStream popStream(T message)
InputStream.close() to release buffers.
Alternatively, use #release(T) to do both in one step.Copyright © 2017–2025 The Apache Software Foundation. All rights reserved.