博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
十四、curator recipes之DistributedAtomicLong
阅读量:6985 次
发布时间:2019-06-27

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

简介

和Java的AtomicLong没有太大的不同DistributedAtomicLong旨在分布式场景中维护一个Long类型的数据,你可以像普通单机环境一样来使用它。

官方文档:

javaDoc:

代码示例

import org.apache.curator.framework.CuratorFramework;import org.apache.curator.framework.CuratorFrameworkFactory;import org.apache.curator.framework.recipes.atomic.AtomicValue;import org.apache.curator.framework.recipes.atomic.DistributedAtomicLong;import org.apache.curator.retry.ExponentialBackoffRetry;public class DistributedAtomicLongDemo {    private static CuratorFramework client = CuratorFrameworkFactory.newClient("localhost:2181", new ExponentialBackoffRetry(3000, 2));    private static String path = "/atomic/long/0001";    private static DistributedAtomicLong atomicLong = new DistributedAtomicLong(client, path, new ExponentialBackoffRetry(1000, 1));    static {        client.start();    }    public static void main(String[] args) throws Exception {        System.out.println(atomicLong.get().postValue());        atomicLong.increment();        System.out.println(atomicLong.get().postValue());        atomicLong.decrement();        System.out.println(atomicLong.get().postValue());        AtomicValue
newAtomicLong = atomicLong.compareAndSet(0L, 10L); System.out.println(newAtomicLong.succeeded()); System.out.println(newAtomicLong.preValue()); System.out.println(newAtomicLong.postValue()); System.out.println(atomicLong.get().postValue()); System.out.println(atomicLong.subtract(5L).postValue()); Thread.sleep(50000); client.close(); }}

 

转载于:https://www.cnblogs.com/lay2017/p/10276410.html

你可能感兴趣的文章
【BZOJ2318】【spoj4060】game with probability Problem 概率DP
查看>>
空格&nbsp在不同浏览器中显示距离不一致问题解决方法
查看>>
Nancy 学习-身份认证(Basic Authentication) 继续跨平台
查看>>
分享5个主流的HTML5开发工具
查看>>
基于Ionic2的开源项目
查看>>
QEMU-KVM中的多线程压缩迁移技术
查看>>
Android下创建一个SQLite数据库
查看>>
软件产品与代码版本管理指南
查看>>
分析Linux内核创建一个新进程的过程【转】
查看>>
sql如何分组选择显示最新的一条数据
查看>>
周锦民:腾讯在线教育视频互动直播间技术实践
查看>>
.NET HttpPost 上传文件图片到服务器
查看>>
[perl] 正则表达式实现多模式匹配
查看>>
RCP之病人信息系统开发总结(1):数据库设计
查看>>
js数组操作,拼写好像,没看清楚就容易出错的。
查看>>
C# winform搜索提示的一些想法
查看>>
table的thead/tbody/tfoot/tr/th/td
查看>>
Delphi多媒体设计之TMediaPlayer组件(五)
查看>>
基于JDK动态代理和CGLIB动态代理的实现Spring注解管理事务(@Trasactional)到底有什么区别。...
查看>>
在新弹出页面下载
查看>>