代码的意图是针对每个 lockKey 同一时刻只能有一个线程处理
private final Map<String, Object> lockMap = new ConcurrentHashMap<>(32);
...
synchronized (lockMap.computeIfAbsent(lockKey, key -> new Object())) {
try {
...
} catch(Exception e) {
...
} finaly {
lockMap.remove(lockKey);
}
}
