Не удается закрыть () карту в ChronicleMap - PullRequest
2 голосов
/ 17 января 2020

Согласно документации, рекомендуется закрыть https://github.com/OpenHFT/Chronicle-Map/blob/master/docs/CM_Tutorial.adoc#close -hroniclemap

По какой-то причине я не могу:

Map<String, String> lexicalizationGraph = ChronicleMap
                .of(String.class, String.class)
                .name("lexicalizations-chronicle-map")
                .constantKeySizeBySample("bn:14271053n")
                .averageValue("average size of value")
                .entries(1_000_000_000L)
                .createPersistedTo(file);

и потом позже:

lexicalizationGraph.close();

Это дает мне следующую ошибку:

symbol:   method close()
  location: variable lexicalizationGraph of type java.util.Map<java.lang.String,java.lang.String>

Как мне закрыть его?

1 Ответ

4 голосов
/ 17 января 2020

Метод close определен в ChronicleMap, а не Map. Чтобы получить к нему доступ, вы должны определить переменную как ChronicleMap (или явно привести ее, когда хотите close(), но не делайте этого):

ChronicleMap<String, String> lexicalizationGraph = ChronicleMap 
                .of(String.class, String.class)
                .name("lexicalizations-chronicle-map")
                .constantKeySizeBySample("bn:14271053n")
                .averageValue("average size of value")
                .entries(1_000_000_000L)
                .createPersistedTo(file);
...