惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

爱范儿
爱范儿
WordPress大学
WordPress大学
C
Check Point Blog
GbyAI
GbyAI
U
Unit 42
Google DeepMind News
Google DeepMind News
B
Blog RSS Feed
Blog — PlanetScale
Blog — PlanetScale
J
Java Code Geeks
I
InfoQ
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Hugging Face - Blog
Hugging Face - Blog
Vercel News
Vercel News
博客园 - 【当耐特】
美团技术团队
小众软件
小众软件
S
SegmentFault 最新的问题
Jina AI
Jina AI
阮一峰的网络日志
阮一峰的网络日志
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
The Cloudflare Blog
Last Week in AI
Last Week in AI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Visual Studio Blog

博客园 - Neo0820

把阿里云效制品仓库当成Maven私仓推送私包 CentOS 空环境安装容器 容器docker系列 docker容器 从windows迁移到centos docker 容器container 镜像image 删除常用备忘 dbsyncer注意事项 博文阅读密码验证 - 博客园 pingcode 代码关联规则 博文阅读密码验证 - 博客园 威纶通屏幕(HMI)数据地址格式的讲解 西门子S7-200的VB、VW和VD 字节地址和位地址有什么区别? 西门子plc s7-200 中I、Q、M、SM、T、C、V、S、L分别指什么? 博文阅读密码验证 - 博客园 C语言各数据类型所占字节数 威纶通HMI常见数据格式 博文阅读密码验证 - 博客园 博文阅读密码验证 - 博客园 威纶通HMI系列
lilishop 锁
Neo0820 · 2023-01-12 · via 博客园 - Neo0820
 private void savePaymentLog(PayParam payParam) {
        //同一个会员如果在不同的客户端使用预存款支付,会存在同时支付,无法保证预存款的正确性,所以对会员加锁
        RLock lock = redisson.getLock(UserContext.getCurrentUser().getId() + "");
        lock.lock();
        try {
            //获取支付收银参数
            CashierParam cashierParam = cashierSupport.cashierParam(payParam);
            this.callBack(payParam, cashierParam);
        } finally {
            lock.unlock();
        }
    }

posted on 2023-01-12 10:59  Neo0820  阅读(71)  评论(0)    收藏  举报