日常记录
文章平均质量分 70
日常记录学习的内容
张钰杰188
这个作者很懒,什么都没留下…
展开
-
如何保证controller的并发安全?
如何保证controller并发安全原创 2022-06-05 14:37:26 · 710 阅读 · 0 评论 -
redisson使用过程中异常记录-看门狗机制失效
异常信息:ttempt to unlock lock, not locked by current thread by node id:*** thread-id: **场景:有一个耗时可能很长的业务方法,做了异步处理@Async放入线程池执行。在controller来创建了锁,Rlock作为参数传到异步方法内,异步方法执行完finally内unlock.这个时候controller已经直接返回,异步方法可能执行了10秒钟后进入finally执行lock.unlock(),这时候报错上边的异常信息贴原创 2022-05-08 20:09:20 · 3982 阅读 · 0 评论 -
多线程环境下hashMap数据丢失场景模拟
都知道hashMap在多线程下不安全,多线程场景下一般用concurrentHashMap,今天我们模拟一下hashMap多线程出现数据丢失package com.example.study.hashmap;import java.util.HashMap;import java.util.Map;/** * <h3>study</h3> * <p></p> * * @author : ZhangYuJie * @date : 2022-原创 2022-04-24 17:24:43 · 1256 阅读 · 0 评论 -
CompletableFuture使用
CompletableFuture解决的问题解决future模式的缺点。a.为了解决Future虽然可以实现异步获取线程的执行结果,但是future没有提供通知机制,调用方无法得知future什么时候执行完的问题。b.要么使用阻塞,在future.get()的地方等待future返回结果,这时会变成同步操作。如果使用isDone()方法进行循环判断,就会消耗cpu资源。CompletableFuture能够将回调放到与任务不同的线程中执行(其实这句话,我也不是很理解),也能将回调作为继续执行的同原创 2022-03-27 17:40:48 · 246 阅读 · 0 评论 -
ImageCombiner图片合成工具
ImageCombiner能够做什么?ImageCombiner是一个专门用于Java服务端图片合成的工具,没有很复杂的功能,简单实用,从实际业务场景出发,提供简单的接口,几行代码即可实现图片拼合(当然用于合成水印也可以),素材上支持图片、文本、矩形三种,支持定位、缩放、旋转、圆角、透明度、颜色、字体、字号、删除线、居中绘制、文本自动换行等特性,足够覆盖图片合成的日常需求。UMLImageCombiner怎么使用ImageCombiner使用起来相当简单,主要的类只用一个,new一个ImageCo原创 2022-02-20 20:06:20 · 2626 阅读 · 0 评论 -
tinylog-轻量级开源日志框架使用记录
前段时间,日志框架各种爆雷,包括:Log4j 1.x, Log4j 2.x, Logback 等都有爆雷,几乎是团灭。Log4j, Logback 都是主流的日志框架,功能也非常强大,不仅仅是日志记录,所以,功能多,自然也会带来更多的漏洞。。今天发现一款轻量日志框架,tinylog基本介绍官方网站:https://tinylog.org/开源地址:https://github.com/tinylog-org/tinylog支持的日志级别:TRACEDEBUGINFOWARNERRO.原创 2022-01-23 17:36:59 · 837 阅读 · 0 评论