博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Curator实现分布式锁
阅读量:6071 次
发布时间:2019-06-20

本文共 1067 字,大约阅读时间需要 3 分钟。

hot3.png

public static void main (String[] args) {    String servers = "10.128.7.20:2181,10.128.7.20:2182,10.128.7.20:2183";    CuratorFramework curator = CuratorFrameworkFactory.builder().retryPolicy(new ExponentialBackoffRetry(10000, 3)).connectString(servers).build();    curator.start();    final InterProcessMutex lock = new InterProcessMutex(curator, "/global_lock");    Executor pool = Executors.newFixedThreadPool(10);    for (int i = 0; i < 10; i ++) {        pool.execute(new Runnable() {            public void run() {                try {                    lock.acquire();                    System.out.println(Thread.currentThread().getName());                    TimeUnit.SECONDS.sleep(5);                } catch (Exception e) {                    e.printStackTrace();                }finally{                    try {                        lock.release();                    } catch (Exception e) {                        e.printStackTrace();                    }                }            }        });    }}

转载于:https://my.oschina.net/u/2250599/blog/503807

你可能感兴趣的文章
开源磁盘加密软件VeraCrypt教程
查看>>
本地vs云:大数据厮杀的最终幸存者会是谁?
查看>>
阿里云公共镜像、自定义镜像、共享镜像和镜像市场的区别 ...
查看>>
shadowtunnel v1.7 发布:新增上级负载均衡支持独立密码
查看>>
Java线程:什么是线程
查看>>
mysql5.7 创建一个超级管理员
查看>>
【框架整合】Maven-SpringMVC3.X+Spring3.X+MyBatis3-日志、JSON解析、表关联查询等均已配置好...
查看>>
要想成为高级Java程序员需要具备哪些知识呢?
查看>>
带着问题去学习--Nginx配置解析(一)
查看>>
onix-文件系统
查看>>
java.io.Serializable浅析
查看>>
我的友情链接
查看>>
多线程之线程池任务管理通用模板
查看>>
CSS3让长单词与URL地址自动换行——word-wrap属性
查看>>
CodeForces 580B Kefa and Company
查看>>
开发规范浅谈
查看>>
Spark Streaming揭秘 Day29 深入理解Spark2.x中的Structured Streaming
查看>>
鼠标增强软件StrokeIt使用方法
查看>>
本地连接linux虚拟机的方法
查看>>
某公司面试java试题之【二】,看看吧,说不定就是你将要做的题
查看>>