Вот кусок кода, который у меня есть
MyValue sampleValue = Values.newHeapInstance(MyValue.class);
// subsequently set the couple of floats and int i have defined in MyValue interface
ChronicleMap<MyKey, MyValue> cache = ChronicleMapBuilder.of(MyKey.class, MyValue.class)
.entries(100)
.averageValue(sampleValue)
.create();
Когда я делаю это, я получаю ошибку
java.lang.IllegalArgumentException: использование BytesMarshallable и
тип значения интерфейса не поддерживается в
net.openhft.chronicle.map.ChronicleMapBuilder.averageValue (ChronicleMapBuilder.java:660)
Может ли кто-нибудь помочь мне понять, является ли этот шаблон использования неправильным?
Если я перехожу к созданию MyValue путем реализации конкретного класса, а затем создаю новое для него следующим образом:
MyValue sampleValue = new MyValueImpl();
// subsequently set the couple of floats and int i have defined in MyValue interface
ChronicleMap<MyKey, MyValue> cache = ChronicleMapBuilder.of(MyKey.class, MyValue.class)
.entries(100)
.averageValue(sampleValue)
.create();