2013-09-26 19 views
5

Mój kod Java rozpoczął liczbę wystąpień Hazelcast w tej samej maszynie JVM (ale są one w tej samej grupie).Czy istnieje sposób zamknięcia instancji Hazelcast w JVM?

Teraz chcę zamknąć niektóre instancje, ale nie wszystkie.

Znam metodę Hazelcast.shutdownAll() - ta metoda zamyka wszystkie wystąpienia. Czy istnieje metoda, która pozwala zamknąć konkretną instancję?

Odpowiedz

11

To bardzo proste - oto kod:

HazelcastInstance instance = Hazelcast.newHazelcastInstance(config); 

instance.getLifecycleService().shutdown(); 
7

Zgadza się.

W zależności od wersji Hazelcast można również zadzwonić pod numer hazelcastInstance.shutdown().

+1

Metoda nie jest przestarzała. Sprawdź dokumentację. – pveentjer

+0

Masz rację. Co zabawne, przez pewien czas był przestarzały. Dokumentacja v2.4 pokazuje ją jako przestarzałą od wersji 1.9 (http://docs.hazelcast.org/docs/2.4/javadoc/com/hazelcast/core/HazelcastInstance.html#shutdown()), a ostatnia dokumentacja nie dłużej pokazuje to jako przestarzałe (http://docs.hazelcast.org/docs/3.7/javadoc/com/hazelcast/core/HazelcastInstance.html#shutdown()). Poprawiam się ... – nwinkler

+0

Fabuła pogrubia ... Metoda "shutdown" zniknęła z wydania v3.0 (http://docs.hazelcast.org/docs/3.0/javadoc/com/hazelcast/core /HazelcastInstance.html), ale wygląda na to, że został przywrócony w wersji 3.1: http://docs.hazelcast.org/docs/3.1/javadoc/com/hazelcast/core/HazelcastInstance.html#shutdown() - też zabawny! – nwinkler