![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java并发
文章平均质量分 69
一年后的西瓜-
永不言弃是战无不胜的
展开
-
redis锁原理步骤解析
redis高并发锁原理:1.用一个常量拼接当前用户的ID作为key,当前时间戳加上锁超时时间作为value2.进入一个while死循环3.循环内第一个判断利用redis的一个方法setIfAbsent如果不存在就设置值并返回true即加锁成功,跳出死循环。4.程序往下走此key在redis已经有值的情况下取出值value5.第二个判断取出的值value即时间戳与当前时间戳比较,value小于当前时间则表明该锁已经过期需要重新设置。6.利用redis方法getAndSet设置新值并返回旧值,通过取原创 2021-06-02 18:01:56 · 3960 阅读 · 0 评论 -
postman传json格式 看好了
{“familyId”: “28”,“userList”: [{“userId”: 440107,“sort”: 1},{“userId”: 440240,“sort”: 3},{“userId”: 440234,“sort”: 2}]}原创 2020-06-16 14:59:20 · 311 阅读 · 0 评论 -
java锁加线程池实现高并发线程安全(一)
定义一个接口public interface Lock {public static class TimeOutExection extends Exception{/** * */private static final long serialVersionUID = 1L;public TimeOutExection(String message) { super(mess...原创 2019-10-29 12:27:09 · 728 阅读 · 0 评论 -
Java线程池原理
线程池原理:1.任务队列2.拒绝策略(抛出异常,直接丢弃,阻塞,临时队列)3.init初始化大小(min,max)4.activemin>=active>=max线程的单个处理,批处理,异步处理。...原创 2019-10-27 22:22:28 · 145 阅读 · 0 评论 -
手写java高并发Lock、unLock实现线程安全,干净又卫生非常刺激。
1.写一个接口import java.util.Collection;public interface Lock {public static class TimeOutExection extends Exception{ public TimeOutExection(String message) { super(message); }}void lock() thro...原创 2019-10-27 16:06:09 · 947 阅读 · 0 评论