package com.renxo.cms.util; import java.util.UUID; public class LockingTest { public static void main(String[] args) throws Exception { System.out.println("Initializing ..."); final DistributedJGroupsLockManager lockManager = new DistributedJGroupsLockManager(); lockManager.setConfigurationFile("/Users/Manuel/Downloads/jgroups.xml"); lockManager.init(); System.out.println("Initialized"); try { for (int i = 0; i < 100; i++) { Thread t = new Thread(new Runnable() { public void run() { for (int i = 0; i < 100; i++) { String lockKey = LockingTest.class.getName() + "-" + UUID.randomUUID().toString(); boolean acquiredLock = lockManager .acquireLock(lockKey); System.out.println(lockKey + "\tacquiredLock=" + acquiredLock); if (acquiredLock) { try { Thread.sleep(1000L); } catch (InterruptedException e) { e.printStackTrace(); } lockManager.releaseLock(lockKey); } } } }); t.start(); } Thread.sleep(60 * 1000L); } finally { lockManager.shutdown(); System.out.println("Shutdown"); } } }