本文整理匯總了Java中com.esotericsoftware.kryo.SerializationException類的典型用法代碼示例。如果您正苦於以下問題:Java SerializationException類的具體用法?Java SerializationException怎麽用?Java SerializationException使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
SerializationException類屬於com.esotericsoftware.kryo包,在下文中一共展示了SerializationException類的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: encodeToBytes
import com.esotericsoftware.kryo.SerializationException; //導入依賴的package包/類
/**
* Encodes the given object using registered Kryo serializers. Provides explicit buffer overflow protection, but
* careful buffer sizing should be employed to reduce the need for this facility.
*
* @param o Object to encode.
*
* @return Encoded bytes.
*/
private byte[] encodeToBytes(final Object o) {
int factor = 1;
byte[] result = null;
ByteBuffer buffer = Kryo.getContext().getBuffer(bufferSize * factor);
while (result == null) {
try {
kryo.writeClassAndObject(buffer, o);
result = new byte[buffer.flip().limit()];
buffer.get(result);
} catch (final SerializationException e) {
Throwable rootCause = e;
while (rootCause.getCause() != null) {
rootCause = rootCause.getCause();
}
if (rootCause instanceof BufferOverflowException) {
buffer = ByteBuffer.allocate(bufferSize * ++factor);
logger.warn("Buffer overflow while encoding {}", o);
} else {
throw e;
}
}
}
return result;
}