kryo.setAutoReset(true);
public static Kryo createKryo(int maxDepth) { Kryo kryo = new Kryo(); kryo.setRegistrationRequired(false); kryo.setAsmEnabled(true); kryo.setMaxDepth(maxDepth); kryo.setAutoReset(true); return kryo; }
public static Kryo create(boolean isObjectSerializer) { Kryo k = new Kryo(); k.setDefaultSerializer(VersionFieldSerializer.class); // Custom serializers for Java 8 date/time k.addDefaultSerializer(ZonedDateTime.class, ZonedDateTimeSerializer.INSTANCE); k.addDefaultSerializer(Instant.class, InstantSerializer.INSTANCE); k.addDefaultSerializer(ZoneId.class, ZoneIdSerializer.INSTANCE); // Add non-cloning serializers for all immutable types bellow k.addDefaultSerializer(UUID.class, UUIDSerializer.INSTANCE); k.addDefaultSerializer(URI.class, URISerializer.INSTANCE); if (isObjectSerializer) { // To avoid monotonic increase of memory use, due to reference tracking, we must // reset kryo after each use. k.setAutoReset(true); } else { // For performance reasons, and to avoid memory use, assume documents do not // require object graph serialization with duplicate or recursive references k.setReferences(false); } return k; } }
private static Kryo createKryo(boolean isObjectSerializer) { Kryo k = new Kryo(); // handle classes with missing default constructors k.setInstantiatorStrategy(new DefaultInstantiatorStrategy(new StdInstantiatorStrategy())); // supports addition of fields if the @since annotation is used k.setDefaultSerializer(VersionFieldSerializer.class); if (!isObjectSerializer) { // For performance reasons, and to avoid memory use, assume documents do not // require object graph serialization with duplicate or recursive references k.setReferences(false); } else { // To avoid monotonic increase of memory use, due to reference tracking, we must // reset after each use. k.setAutoReset(true); } k.register(ExampleServiceState.class, EXAMPLE_SERVICE_CLASS_ID); HashMap<String, String> map = new HashMap<>(); k.register(map.getClass()); return k; }
private static Kryo createKryo(boolean isObjectSerializer) { Kryo k = new Kryo(); // handle classes with missing default constructors k.setInstantiatorStrategy(new DefaultInstantiatorStrategy(new StdInstantiatorStrategy())); // supports addition of fields if the @since annotation is used k.setDefaultSerializer(VersionFieldSerializer.class); if (!isObjectSerializer) { // For performance reasons, and to avoid memory use, assume documents do not // require object graph serialization with duplicate or recursive references k.setReferences(false); } else { // To avoid monotonic increase of memory use, due to reference tracking, we must // reset after each use. k.setAutoReset(true); } k.register(ExampleServiceState.class, EXAMPLE_SERVICE_CLASS_ID); HashMap<String, String> map = new HashMap<>(); k.register(map.getClass()); return k; }
k.setAutoReset(true);