2014-09-12 3 views
0

Поддерживает ли распределенная блокировка GridGain?Поддерживает ли GridGain распределенный замок?

В моем сценарии я хочу добавить распределенный блокировку в свой код и убедиться, что только один узел выполняет код в одно и то же время. Вот пример кода:

final Grid grid = GridGain.start("config/default-config.xml"); 

GridCache<Object, Object> cache = grid.cache("partitioned_tx"); 

ExecutorService exec = grid.compute().executorService(); 

//Lock here 

for(int i=0;i<100;i++){ 
    final int index = i; 

    exec.submit(new GridRunnable() { 
    private static final long serialVersionUID = -8705359518901621360L; 

    @Override 
    public void run() { 
     System.out.println("The task-"+index+" is executed on "+grid.forLocal().node().toString()); 
    } 
    }); 
} 

//unlock here 
exec.shutdown(); 
exec.awaitTermination(0, TimeUnit.MILLISECONDS); 

Спасибо, Билл

ответ

2

Да, GridGain поддерживает распределенные замки, а также распределенные транзакции. Пожалуйста, ознакомьтесь с документацией Basic Distributed Locks в руководстве Getting Started.

Смежные вопросы